home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 5 / Apprentice-Release5.iso / Information / CSMP Digest / volume 3 / csmp-digest-v3-043 < prev    next >
Text File  |  1995-12-31  |  130KB  |  3,269 lines

  1. Received-Date: Sat, 9 Jul 1994 13:50:45 +0200
  2. From: pottier@clipper.ens.fr (Francois Pottier)
  3. Subject: csmp-digest-v3-043
  4. To: csmp-digest@ens.fr
  5. Date: Sat, 9 Jul 1994 13:50:38 +0200 (MET DST)
  6. X-Mailer: ELM [version 2.4 PL23]
  7. Mime-Version: 1.0
  8. Content-Type: text/plain; charset=ISO-8859-1
  9. Content-Transfer-Encoding: 8bit
  10. Errors-To: listman@ens.fr
  11. Reply-To: pottier@clipper.ens.fr
  12. X-Sequence: 46
  13.  
  14. C.S.M.P. Digest             Sat, 09 Jul 94       Volume 3 : Issue 43
  15.  
  16. Today's Topics:
  17.  
  18.         7.5 Floating Window (How To use?)
  19.         Can Mac's survive without AppleTalk?
  20.         CodeWarrior and CODE Resources
  21.         Fast full screen scrolling: impossible?
  22.         MacPerl- Redirecting STDIN & STDOUT
  23.         PowerPC floating point issue
  24.         Q: Thread Manager - How do I benefit?
  25.         prevent update when call TEDelete, TEInsert??
  26.  
  27.  
  28.  
  29. The Comp.Sys.Mac.Programmer Digest is moderated by Francois Pottier
  30. (pottier@clipper.ens.fr).
  31.  
  32. The digest is a collection of article threads from the internet newsgroup
  33. comp.sys.mac.programmer.  It is designed for people who read c.s.m.p. semi-
  34. regularly and want an archive of the discussions.  If you don't know what a
  35. newsgroup is, you probably don't have access to it.  Ask your systems
  36. administrator(s) for details.  If you don't have access to news, you may
  37. still be able to post messages to the group by using a mail server like
  38. anon.penet.fi (mail help@anon.penet.fi for more information).
  39.  
  40. Each issue of the digest contains one or more sets of articles (called
  41. threads), with each set corresponding to a 'discussion' of a particular
  42. subject.  The articles are not edited; all articles included in this digest
  43. are in their original posted form (as received by our news server at
  44. nef.ens.fr).  Article threads are not added to the digest until the last
  45. article added to the thread is at least two weeks old (this is to ensure that
  46. the thread is dead before adding it to the digest).  Article threads that
  47. consist of only one message are generally not included in the digest.
  48.  
  49. The digest is officially distributed by two means, by email and ftp.
  50.  
  51. If you want to receive the digest by mail, send email to listserv@ens.fr
  52. with no subject and one of the following commands as body:
  53.     help                        Sends you a summary of commands
  54.     subscribe csmp-digest Your Name    Adds you to the mailing list
  55.     signoff csmp-digest            Removes you from the list
  56. Once you have subscribed, you will automatically receive each new
  57. issue as it is created.
  58.  
  59. The official ftp info is //ftp.dartmouth.edu/pub/csmp-digest.
  60. Questions related to the ftp site should be directed to
  61. scott.silver@dartmouth.edu. Currently no previous volumes of the CSMP
  62. digest are available there.
  63.  
  64. Also, the digests are available to WAIS users.  To search back issues
  65. with WAIS, use comp.sys.mac.programmer.src. With Mosaic, use
  66. http://www.wais.com/wais-dbs/comp.sys.mac.programmer.html.
  67.  
  68.  
  69. -------------------------------------------------------
  70.  
  71. >From denboer@cc.umanitoba.ca (David Den Boer)
  72. Subject: 7.5 Floating Window (How To use?)
  73. Date: 22 Jun 1994 01:49:42 GMT
  74. Organization: The University of Manitoba
  75.  
  76. I have seen various discussions on the appearance of the 7.5 floater, but
  77. I don't care about that (although I find it quite attractive!)
  78. I want to know how to use it from my apps?!?!
  79. Is there a standard built in WDEF, or do I have to copy and paste it from
  80. some other resource?
  81.  
  82. How to unlock the funkiness of the window is a more appropriate title...
  83.  
  84. Thanks
  85. -- 
  86. David A. denBoer            University of Manitoba
  87. denboer@CC.UManitoba.CA            Computer Services -- User Services
  88.  
  89. +++++++++++++++++++++++++++
  90.  
  91. >From trygve@netcom.com (Trygve Isaacson)
  92. Date: Thu, 23 Jun 1994 03:30:39 GMT
  93. Organization: NETCOM On-line Communication Services (408 261-4700 guest)
  94.  
  95. The resource ID is 125. So when creating your window, specify a procID of 
  96. 125*16 + variants to use it. The variants I've discovered are:
  97. 4 - adds a zoom box
  98. 8 - puts the title bar on the left
  99. (12 for both)
  100.  
  101. Trygve Isaacson
  102. Wall Data Incorporated
  103.  
  104.  
  105. +++++++++++++++++++++++++++
  106.  
  107. >From tgaul@halcyon.com (Troy Gaul)
  108. Date: Wed, 22 Jun 1994 21:14:02 -0700
  109. Organization: Infinity Systems
  110.  
  111. In article <2u85bm$aik@canopus.cc.umanitoba.ca>, denboer@cc.umanitoba.ca
  112. (David Den Boer) wrote:
  113.  
  114. > I have seen various discussions on the appearance of the 7.5 floater, but
  115. > I don't care about that (although I find it quite attractive!)
  116. > I want to know how to use it from my apps?!?!
  117. > Is there a standard built in WDEF, or do I have to copy and paste it from
  118. > some other resource?
  119. > How to unlock the funkiness of the window is a more appropriate title...
  120.  
  121. First, make sure the user is running System 7.5.  It isn't available in
  122. eariler System versions -- Apple has said that they will release a
  123. 'compatibility' WDEF that you will be able to include in your App that will
  124. call through to the System floater WDEF if it is present (like the Movable
  125. Modal WDEF they released for compatibility with System 6).
  126.  
  127. Second, call NewWindow:
  128.  
  129.     wind = NewWindow(wStorage, &rBounds, title, visFlag, wDefProcID,
  130. behind,
  131.                      goAwayFlag, refCon);
  132.  
  133. For the wDefProcID, pass in:
  134.  
  135.     (125 * 16 + procID)
  136.  
  137. 125 is the ID of the WDEF resource in the System file, and this is the
  138. equation Apple describes to make the Window Manager use a custom WDEF.  The
  139. procID will modify the WDEF in the following way:
  140.  
  141.     Add      To Get
  142.     ---      ------
  143.  
  144.      1       A windoid that hilights and dims depending on HiliteWindow.
  145.              The default is for the titlebar to always show the pattern.
  146.              (The default is bad if a dialog will appear in front of the 
  147.              floater because then the floater should appear dimmed.)
  148.  
  149.      2       To get a grow box.
  150.  
  151.      4       To get a zoom box.
  152.  
  153.      8       For a titlebar down the left hand side.
  154.  
  155. They can be added together to get a combination of the effects.  Also, if
  156. you pass in a non-empty string in 'title', it will be displayed in Geneva 9
  157. plain (assuming the titlebar is across the top).
  158.  
  159.  
  160. Note that if you use a grow box, there is a problem where the grow box will
  161. show through any windows in your application that appear above it. 
  162. Appearantly, the new WDEF is not obeying the window's clipping region when
  163. drawing the grow box. 
  164.  
  165. Also, the grow box is one pixel narrower than the standard grow box, which
  166. means that a scroll bar will look strange when scaled to match it, and it
  167. doesn't dim then the rest of the windoid dims (when procID 1 is used).  
  168.  
  169. The titlebar flashes more than it needs to when being redrawn, and I have
  170. also heard that there are some problems with multiple monitors.
  171.  
  172. _troy
  173. //////// //////___Troy Gaul_________________________tgaul@halcyon.com__ //
  174.   //    //       Infinity Systems ; Redmond, Washington                //
  175.  //    //  //  "Insert witty quote here."                             //
  176. //    //////________________________________________________________ //
  177.  
  178. +++++++++++++++++++++++++++
  179.  
  180. >From peter.lewis@info.curtin.edu.au (Peter N Lewis)
  181. Date: Thu, 23 Jun 1994 15:35:07 +0800
  182. Organization: NCRPDA, Curtin University
  183.  
  184. In article <2u85bm$aik@canopus.cc.umanitoba.ca>, denboer@cc.umanitoba.ca
  185. (David Den Boer) wrote:
  186.  
  187. >I have seen various discussions on the appearance of the 7.5 floater, but
  188. >I don't care about that (although I find it quite attractive!)
  189. >I want to know how to use it from my apps?!?!
  190. >Is there a standard built in WDEF, or do I have to copy and paste it from
  191. >some other resource?
  192. >
  193. >How to unlock the funkiness of the window is a more appropriate title...
  194.  
  195. Use WDEF 125, ie proc id 125*16+x where x is between 0 and 15 depending on
  196. whether you want a left hand title bar, with or without close/zoom boxes.
  197.  
  198. wp:=NewWindow(nil,bounds,"'Hello',true,125*16,pointer(-1),true,0);
  199.  
  200. Enjoy,
  201.    Peter.
  202. _______________________________________________________________________
  203. Peter N Lewis <peter.lewis@info.curtin.edu.au>       Ph: +61 9 368 2055
  204.  
  205. ---------------------------
  206.  
  207. >From mxmora@unix.sri.com (Matt Mora)
  208. Subject: Can Mac's survive without AppleTalk?
  209. Date: 16 Jun 1994 11:56:40 -0700
  210. Organization: SRI International, Menlo Park, CA
  211.  
  212. They are about to re-do the networks around here, putting in 
  213. fiber and ethernet everywhere. They were saying that
  214. they would no longer support AppleTalk. Of course I went
  215. into a tizzy and started sending memo's everywhere to whom
  216. ever I thought was in charge (which at SRI could be anybody or nobody).
  217. They mention the AppleTalk support would only be supported in the 
  218. near future and that you could do appletalk on subnets.
  219.  
  220. Is Apple moving away from AppleTalk? They seem to be under the impression
  221. that Apple is going away from appletalk and are moving to something else.
  222. I was at the WWDC and I don't remember any thing mentioned like this.
  223.  
  224. So if I only have a MacTCP connection from my mac to the network
  225. will I still be able to print, File Share,  do PowerTalk stuff,
  226. connect to other programs running on other macs, use the new MovieTalk,
  227. network backup and other cool things?
  228.  
  229. What would happen if Appletalk wasn't supported on your net?
  230.  
  231. Maybe I'm blowing this thing out of proportion and other companies
  232. are doing the same things. Does this sound like a logical thing
  233. to do? Is this going to save money?
  234.  
  235.  
  236. Thanks
  237.  
  238. Xavier
  239.  
  240.  
  241.  
  242. -- 
  243. ___________________________________________________________
  244. Matthew Xavier Mora                       Matt_Mora@sri.com
  245. SRI International                       mxmora@unix.sri.com
  246. 333 Ravenswood Ave                    Menlo Park, CA. 94025
  247.  
  248. +++++++++++++++++++++++++++
  249.  
  250. >From stan@astro.ocis.temple.edu (Stan Horwitz)
  251. Date: 16 Jun 1994 20:19:57 GMT
  252. Organization: Temple University, Academic Computer Services
  253.  
  254. Matt Mora (mxmora@unix.sri.com) wrote:
  255. : They are about to re-do the networks around here, putting in 
  256. : fiber and ethernet everywhere. They were saying that
  257. : they would no longer support AppleTalk. Of course I went
  258. : into a tizzy and started sending memo's everywhere to whom
  259. : ever I thought was in charge (which at SRI could be anybody or nobody).
  260. : They mention the AppleTalk support would only be supported in the 
  261. : near future and that you could do appletalk on subnets.
  262.  
  263. Macs can survive without Appletalk just fine. The Mac I am using now is
  264. ethernetted and it works fine in general and its much faster than Appletalk.
  265. The only thing I hate about this setup is that when the network service you
  266. are using, or the network itself, goes down or slows up, it can make your
  267. Mac look like it hangs until things on the network normalize again. This
  268. may just be a quirk in the ethernet card (Asante) my Mac has in it though.
  269.  
  270. --
  271. My name is Stan Horwitz and my E-mail address is stan@astro.ocis.temple.edu
  272. My opinions are all mine. They do not reflect those of my employer.
  273.  
  274.  
  275. +++++++++++++++++++++++++++
  276.  
  277. >From Carl R. Osterwald <carl_osterwald@nrel.gov>
  278. Date: Thu, 16 Jun 1994 22:49:15 GMT
  279. Organization: National Renewable Energy Laboratory
  280.  
  281. In article <2tq798$s6t@unix.sri.com> Matt Mora, mxmora@unix.sri.com
  282. writes:
  283. >They are about to re-do the networks around here, putting in 
  284. >fiber and ethernet everywhere. They were saying that
  285. >they would no longer support AppleTalk. Of course I went
  286. >into a tizzy and started sending memo's everywhere to whom
  287. >ever I thought was in charge (which at SRI could be anybody or nobody).
  288. >They mention the AppleTalk support would only be supported in the 
  289. >near future and that you could do appletalk on subnets.
  290. >
  291. >Is Apple moving away from AppleTalk? They seem to be under the impression
  292. >that Apple is going away from appletalk and are moving to something else.
  293. >I was at the WWDC and I don't remember any thing mentioned like this.
  294.  
  295. It is very common to confuse to completely different terms -- AppleTalk
  296. and LocalTalk.  AppleTalk is a network protocol, and LocalTalk is a
  297. method of network wiring.  AppleTalk can operate over LocalTalk, Ethernet
  298. or through a modem using ARA, for example.  Modern Ethernet routers are
  299. multiprotocal, which means they know how to deliver packets for a variety
  300. of protocols, including AppleTalk.  I suspect that what your networking
  301. types meant was that they would no longer support LocalTalk wiring (or
  302. PhoneNet, for that matter) which runs at about 240 kbs.  I really don't
  303. see Apple sacking AppleTalk (the protocol).
  304.  
  305. +++++++++++++++++++++++++++
  306.  
  307. >From Sean McMains <mcmains@unt.edu>
  308. Date: 16 Jun 1994 22:02:06 GMT
  309. Organization: University of North Texas
  310.  
  311. In article <2tq798$s6t@unix.sri.com> Matt Mora, mxmora@unix.sri.com
  312. writes:
  313. >Is Apple moving away from AppleTalk? They seem to be under the impression
  314. >that Apple is going away from appletalk and are moving to something else.
  315. >I was at the WWDC and I don't remember any thing mentioned like this.
  316.  
  317. It looks like some folks are getting confused on the AppleTalk vs.
  318. LocalTalk distinction. Ready? Everyone together:
  319.  
  320. "AppleTalk is a protocol. LocalTalk is a transport." :-)
  321.  
  322. With that out of my system, your question would seem to indicated that
  323. the net boys at your place are planning not to route AppleTalk from
  324. subnet to subnet on an ethernet network. In the current networking
  325. incarnation, this would mean that all the network stuff that doesn't rely
  326. on MacTCP would not work.
  327.  
  328. Apple has something called Open Transport in the works which will allow
  329. use of other transports to provide various functionality in a modular
  330. form (sort of a souped up, network-studly communication toolbox kinda
  331. thing). I don't know how backward compatible it will be, but the
  332. presentation I saw made it clear that they would not be replacing
  333. AppleTalk. I would suggest you fight as hard as you can to keep Appletalk
  334. routing on your networks until we see what Open Transport will do (and
  335. how backward-compatible it is with existing software).
  336. ========================================================================
  337. Sean McMains              | P.O. Box 13495          | Phone:817.565.2039
  338. Macintosh Support         | Denton TX 76203         | Fax  :817.565.4060
  339. University of North Texas | EMail: mcmains@unt.edu  |
  340. WWW: http://gaia.nms.unt.edu/cchome/mcmains/mcmains.html
  341.  
  342. +++++++++++++++++++++++++++
  343.  
  344. >From mxmora@unix.sri.com (Matt Mora)
  345. Date: 16 Jun 1994 14:07:46 -0700
  346. Organization: SRI International, Menlo Park, CA
  347.  
  348. In article <2tqc5d$av@cronkite.ocis.temple.edu> stan@astro.ocis.temple.edu (Stan Horwitz) writes:
  349.  
  350. >Macs can survive without Appletalk just fine. The Mac I am using now is
  351. >ethernetted and it works fine in general and its much faster than Appletalk.
  352. >The only thing I hate about this setup is that when the network service you
  353. >are using, or the network itself, goes down or slows up, it can make your
  354. >Mac look like it hangs until things on the network normalize again. This
  355. >may just be a quirk in the ethernet card (Asante) my Mac has in it though.
  356.  
  357. I just want to make it clear I'm talking about AppleTalk not LocalTalk. 
  358. LocalTalk  is the Twisted Pair wiring that runs a 230kb. I'm talking
  359. about the AppleTalk protocol that runs on any network medium be it LocalTalk
  360. Ethernet or what ever.
  361.  
  362.  
  363. Xavier
  364.  
  365.  
  366.  
  367.  
  368.  
  369. -- 
  370. ___________________________________________________________
  371. Matthew Xavier Mora                       Matt_Mora@sri.com
  372. SRI International                       mxmora@unix.sri.com
  373. 333 Ravenswood Ave                    Menlo Park, CA. 94025
  374.  
  375. +++++++++++++++++++++++++++
  376.  
  377. >From aelman@cs.stanford.edu (Adam Elman)
  378. Date: Thu, 16 Jun 1994 16:38:31 -0800
  379. Organization: Residential Computing, Stanford University
  380.  
  381. In article <2tqc5d$av@cronkite.ocis.temple.edu>, stan@astro.ocis.temple.edu
  382. (Stan Horwitz) wrote:
  383.  
  384. > Matt Mora (mxmora@unix.sri.com) wrote:
  385. > : They are about to re-do the networks around here, putting in 
  386. > : fiber and ethernet everywhere. They were saying that
  387. > : they would no longer support AppleTalk. Of course I went
  388. > : into a tizzy and started sending memo's everywhere to whom
  389. > : ever I thought was in charge (which at SRI could be anybody or nobody).
  390. > : They mention the AppleTalk support would only be supported in the 
  391. > : near future and that you could do appletalk on subnets.
  392. > Macs can survive without Appletalk just fine. The Mac I am using now is
  393. > ethernetted and it works fine in general and its much faster than Appletalk.
  394. > The only thing I hate about this setup is that when the network service you
  395. > are using, or the network itself, goes down or slows up, it can make your
  396. > Mac look like it hangs until things on the network normalize again. This
  397. > may just be a quirk in the ethernet card (Asante) my Mac has in it though.
  398.  
  399. There is some confusion on this point: AppleTalk is the software protocol,
  400. which is critical to standard Mac networking (printing, AppleShare, the new
  401. PowerTalk stuff, etc.).  The standard Mac hardware network wiring protocol,
  402. which was originally named AppleTalk, was renamed LocalTalk.  Farallon
  403. markets a version of LocalTalk which runs over standard phone wire and is
  404. called PhoneNet; this has generally become much more common than Apple's
  405. original LocalTalk wiring.
  406.  
  407. AppleTalk runs just fine over Ethernet, fiber, whatever.  Apple is
  408. definitely moving away from LocalTalk -- all new Macs except for the lowest
  409. models have built-in Ethernet ports.  But Apple is certainly not moving
  410. away from the software protocol.
  411.  
  412. -- 
  413. Adam Elman             | WWW: http://rescomp.stanford.edu/~elmanad/
  414. aelman@cs.stanford.edu | Finger me or check out my Web page for PGP key!!!
  415. - ------------------------------------------------------------------------
  416. "Sometimes I lie awake at night and ask 'Why me?'  Then a voice answers
  417. 'Nothing personal, your name just happened to come up.'" -- Peanuts
  418.  
  419. +++++++++++++++++++++++++++
  420.  
  421. >From jwbaxter@olympus.net (John W. Baxter)
  422. Date: Thu, 16 Jun 1994 19:18:36 -0700
  423. Organization: Internet for the Olympic Peninsula
  424.  
  425. In article <2tq798$s6t@unix.sri.com>, mxmora@unix.sri.com (Matt Mora)
  426. wrote:
  427.  
  428. > They are about to re-do the networks around here, putting in 
  429. > fiber and ethernet everywhere. They were saying that
  430. > they would no longer support AppleTalk. Of course I went
  431. > into a tizzy and started sending memo's everywhere to whom
  432. > ever I thought was in charge (which at SRI could be anybody or nobody).
  433. > They mention the AppleTalk support would only be supported in the 
  434. > near future and that you could do appletalk on subnets.
  435. > Is Apple moving away from AppleTalk? They seem to be under the impression
  436. > that Apple is going away from appletalk and are moving to something else.
  437. > I was at the WWDC and I don't remember any thing mentioned like this.
  438.  
  439. Well, the new machines have EtherNet built in.  One could certainly read a
  440. long-term trend away from AppleTalk in that.  And it makes
  441. sense...AppleTalk was fine 10 years ago...it's slow now, and not really
  442. likely to get faster (it's stressing the serial connection as it is).
  443.  
  444. > What would happen if Appletalk wasn't supported on your net?
  445.  
  446. I'd plug in the EtherNet connection on my 8100, and buy an EtherNet card
  447. for my IIci.  I may anyhow.
  448.  
  449.  
  450. -- 
  451. John Baxter    Port Ludlow, WA, USA  [West shore, Puget Sound]
  452.    No hablo Intel.
  453.    jwbaxter@pt.olympus.net
  454.  
  455. +++++++++++++++++++++++++++
  456.  
  457. >From jonpugh@netcom.com (Jon Pugh)
  458. Date: Fri, 17 Jun 1994 11:13:22 GMT
  459. Organization: NETCOM On-line Communication Services (408 261-4700 guest)
  460.  
  461. Matt Mora (mxmora@unix.sri.com) wrote:
  462.  
  463. > Is Apple moving away from AppleTalk? They seem to be under the impression
  464. > that Apple is going away from appletalk and are moving to something else.
  465. > I was at the WWDC and I don't remember any thing mentioned like this.
  466.  
  467. Open Transport (remember them? You got a T shirt at the netter's
  468. dinner) is only intended to replace MacTCP and the software layers,
  469. not the actual AppleTalk protocol.
  470.  
  471. Definately put up a fight.  I know that network guys just hate AppleTalk's
  472. constant address pinging.  ;)  As Nixon always said, "<expletive deleted> 
  473. them."  Don't let them demote AppleTalk to a second class protocol.
  474.  
  475. Jon
  476.  
  477. +++++++++++++++++++++++++++
  478.  
  479. >From mxmora@unix.sri.com (Matt Mora)
  480. Date: 17 Jun 1994 11:45:44 -0700
  481. Organization: SRI International, Menlo Park, CA
  482.  
  483. In article <jonpughCrJGIA.B08@netcom.com> jonpugh@netcom.com (Jon Pugh) writes:
  484. >Matt Mora (mxmora@unix.sri.com) wrote:
  485. >
  486. >> Is Apple moving away from AppleTalk? They seem to be under the impression
  487. >> that Apple is going away from appletalk and are moving to something else.
  488. >> I was at the WWDC and I don't remember any thing mentioned like this.
  489. >
  490. >Open Transport (remember them? You got a T shirt at the netter's
  491. >dinner) is only intended to replace MacTCP and the software layers,
  492. >not the actual AppleTalk protocol.
  493.  
  494. Yes I remember the shirt. I was wearing it yesterday at the standards meeting
  495. when I stood up and officially protested. 
  496.  
  497.  
  498. >Definately put up a fight.  I know that network guys just hate AppleTalk's
  499. >constant address pinging.  ;)  As Nixon always said, "<expletive deleted> 
  500. >them."  Don't let them demote AppleTalk to a second class protocol.
  501.  
  502. Well I talked to our network guru (the actual engineer here that is resposible
  503. for the new net) and he said that they have to pass Appletalk if we are
  504. going to continue to have Macs here. What does he care its just another 
  505. protocol.  He also said that he could install one gatorbox to just broadcast 
  506. zone names if need be. 
  507.  
  508. As always management has its collective head up a dark orafice. :-)
  509.  
  510.  
  511.  
  512. Xavier
  513.  
  514.  
  515.  
  516. -- 
  517. ___________________________________________________________
  518. Matthew Xavier Mora                       Matt_Mora@sri.com
  519. SRI International                       mxmora@unix.sri.com
  520. 333 Ravenswood Ave                    Menlo Park, CA. 94025
  521.  
  522. +++++++++++++++++++++++++++
  523.  
  524. >From doc@miracle.farallon.com (eric doc kampman)
  525. Date: Fri, 17 Jun 1994 17:44:49 -0800
  526. Organization: farallon
  527.  
  528. In article <jonpughCrJGIA.B08@netcom.com>, jonpugh@netcom.com (Jon Pugh)
  529. wrote:
  530.  
  531. > Matt Mora (mxmora@unix.sri.com) wrote:
  532. > > Is Apple moving away from AppleTalk? They seem to be under the impression
  533. > > that Apple is going away from appletalk and are moving to something else.
  534. > > I was at the WWDC and I don't remember any thing mentioned like this.
  535. > Open Transport (remember them? You got a T shirt at the netter's
  536. > dinner) is only intended to replace MacTCP and the software layers,
  537. > not the actual AppleTalk protocol.
  538.  
  539. uh oh.  anybody know what this means for custom 'mdev's?  (alternate LAP
  540. layer interfaces for MacTCP).
  541.  
  542. -- 
  543. doc@miracle.farallon.com
  544. Farallon didn't write this, Farallon isn't responsible for its con-
  545. tents, besides, who's Farallon anyway?
  546. ******************************************************************
  547. Look for the thing you can't find/Seeing with eyes makes you blind
  548.               You know you're out of your mind 
  549.  
  550. +++++++++++++++++++++++++++
  551.  
  552. >From Bruce@hoult.actrix.gen.nz (Bruce Hoult)
  553. Date: Sun, 19 Jun 1994 01:46:44 +1200 (NZST)
  554. Organization: (none)
  555.  
  556. jwbaxter@olympus.net (John W. Baxter) writes:
  557. > > Is Apple moving away from AppleTalk? They seem to be under the impression
  558. > > that Apple is going away from appletalk and are moving to something else.
  559. > > I was at the WWDC and I don't remember any thing mentioned like this.
  560. > Well, the new machines have EtherNet built in.  One could certainly read a
  561. > long-term trend away from AppleTalk in that.  And it makes
  562. > sense...AppleTalk was fine 10 years ago...it's slow now, and not really
  563. > likely to get faster (it's stressing the serial connection as it is).
  564. > > 
  565. > > What would happen if Appletalk wasn't supported on your net?
  566. > I'd plug in the EtherNet connection on my 8100, and buy an EtherNet card
  567. > for my IIci.  I may anyhow.
  568.  
  569. Aaarrggghhhh!!!!
  570.  
  571. Those EtherNet connections *are* running AppleTalk (99% of them, anyway)
  572.  
  573. Matt was quite clearly talking about AppleTalk-the-protocol-stack, and not
  574. AppleTalk-the-low-speed-wiring-system.  Even if you didn't know that the
  575. wiring has been called LocalTalk for at least five years now, it was pretty
  576. clear that he was talking about TCP/IP vs AppleTalk and not EtherTalk vs
  577. LocalTalk.
  578.  
  579. -- Bruce
  580.  
  581. +++++++++++++++++++++++++++
  582.  
  583. >From ce_rupn@pavo.concordia.ca (RUPNIK, CHRISTOPHER E.)
  584. Date: Sat, 18 Jun 1994 16:20:00 GMT
  585. Organization: Concordia University
  586.  
  587. In article <2854835204@hoult.actrix.gen.nz>, Bruce@hoult.actrix.gen.nz (Bruce Hoult) writes...
  588. >jwbaxter@olympus.net (John W. Baxter) writes:
  589. >> > Is Apple moving away from AppleTalk? They seem to be under the impression
  590. >> > that Apple is going away from appletalk and are moving to something else.
  591. >> > I was at the WWDC and I don't remember any thing mentioned like this.
  592. >> 
  593. >> Well, the new machines have EtherNet built in.  One could certainly read a
  594. >> long-term trend away from AppleTalk in that.  And it makes
  595. >> sense...AppleTalk was fine 10 years ago...it's slow now, and not really
  596. >> likely to get faster (it's stressing the serial connection as it is).
  597. >> 
  598. >> > 
  599. >> > What would happen if Appletalk wasn't supported on your net?
  600. >> 
  601. >> I'd plug in the EtherNet connection on my 8100, and buy an EtherNet card
  602. >> for my IIci.  I may anyhow.
  603. >Aaarrggghhhh!!!!
  604. >Those EtherNet connections *are* running AppleTalk (99% of them, anyway)
  605. >Matt was quite clearly talking about AppleTalk-the-protocol-stack, and not
  606. >AppleTalk-the-low-speed-wiring-system.  Even if you didn't know that the
  607. >wiring has been called LocalTalk for at least five years now, it was pretty
  608. >clear that he was talking about TCP/IP vs AppleTalk and not EtherTalk vs
  609. >LocalTalk.
  610. >-- Bruce
  611.  
  612.  Yes, he is correct. It appears that mac people will never learn the 
  613.  appletalk/localtalk/ethertalk differences and what whey actually mean.
  614.  
  615.  As for Appletalk being "dead" the original poster is correct. Apple is
  616.  supposed to implement a completely rewritten new stack called Oxx something
  617.  
  618.  The reason for this is that the appletalk stack is not native powerpc, this
  619.  means that an appleshare server based on powermac is just not going give
  620.  a reasonable performance....
  621.  
  622.   Chris Rupnik
  623.   ce_rupn@pavo.concordia.ca
  624.  
  625.  
  626. +++++++++++++++++++++++++++
  627.  
  628. >From jep@unlinfo.unl.edu (Stephen Panarelli)
  629. Date: 19 Jun 1994 11:30:40 GMT
  630. Organization: University of Nebraska--Lincoln    
  631.  
  632. Carl R. Osterwald (carl_osterwald@nrel.gov) wrote:
  633. : In article <2tq798$s6t@unix.sri.com> Matt Mora, mxmora@unix.sri.com
  634. : writes:
  635. : >They are about to re-do the networks around here, putting in 
  636. : >fiber and ethernet everywhere. They were saying that
  637. : >they would no longer support AppleTalk. Of course I went
  638. : >into a tizzy and started sending memo's everywhere to whom
  639. : >ever I thought was in charge (which at SRI could be anybody or nobody).
  640. : >They mention the AppleTalk support would only be supported in the 
  641. : >near future and that you could do appletalk on subnets.
  642. : >
  643. : >Is Apple moving away from AppleTalk? They seem to be under the impression
  644. : >that Apple is going away from appletalk and are moving to something else.
  645. : >I was at the WWDC and I don't remember any thing mentioned like this.
  646.  
  647. : It is very common to confuse to completely different terms -- AppleTalk
  648. : and LocalTalk.  AppleTalk is a network protocol, and LocalTalk is a
  649. : method of network wiring.  AppleTalk can operate over LocalTalk, Ethernet
  650.  
  651. Then there's LocalTalk Link Access Protocall....(:
  652.  
  653.  
  654. : or through a modem using ARA, for example.  Modern Ethernet routers are
  655. : multiprotocal, which means they know how to deliver packets for a variety
  656. : of protocols, including AppleTalk.  I suspect that what your networking
  657. : types meant was that they would no longer support LocalTalk wiring (or
  658. : PhoneNet, for that matter) which runs at about 240 kbs.  I really don't
  659. : see Apple sacking AppleTalk (the protocol).
  660.  
  661. steve.
  662. --
  663.     _/_/_/_/_/  _/      _/  _/_/_/_/   | Stephen Kemal Panarelli
  664.    _/          _/    _/    _/      _/  | University of Nebraska
  665.   _/_/_/_/_/  _/_/_/      _/_/_/_/     | Electrical Engineering
  666.          _/  _/    _/    _/            | jep@unlinfo.unl.edu
  667. _/_/_/_/_/  _/      _/  _/             | panzar@yoda.unl.edu
  668.  
  669. +++++++++++++++++++++++++++
  670.  
  671. >From ldo@waikato.ac.nz (Lawrence D'Oliveiro, Waikato University)
  672. Date: 20 Jun 94 17:15:51 +1200
  673. Organization: University of Waikato, Hamilton, New Zealand
  674.  
  675. In article <jonpughCrJGIA.B08@netcom.com>, jonpugh@netcom.com (Jon Pugh) writes:
  676. >
  677. > Definately put up a fight.  I know that network guys just hate AppleTalk's
  678. > constant address pinging.  ;)
  679.  
  680. That pinging is the sound of AppleTalk configuring itself, so you don't have
  681. to!
  682.  
  683. We have maybe 500 Macs on campus. Nearly every one is an AppleTalk
  684. node, and most of them are TCP/IP nodes as well. There are a roughly equal
  685. number of Intel-based machines, workstations and the like, which are also
  686. TCP/IP nodes. So the ratio of TCP/IP nodes to AppleTalk nodes is 2:1. What
  687. do you think the administration overhead is? More like 10:1 in terms of
  688. personnel, time spent on address housekeeping, sorting out configuration
  689. stuffups by stupid users, and general aggro.
  690.  
  691. AppleTalk still remains the world's easiest-to-use local area networking
  692. protocol. No contest.
  693.  
  694. Lawrence D'Oliveiro                       fone: +64-7-856-2889
  695. Info & Tech Services Division              fax: +64-7-838-4066
  696. University of Waikato            electric mail: ldo@waikato.ac.nz
  697. Hamilton, New Zealand    37^ 47' 26" S, 175^ 19' 7" E, GMT+12:00
  698. Where would we be without rhetorical questions?
  699.  
  700. +++++++++++++++++++++++++++
  701.  
  702. >From somogyi@ziff.com (Stephan Somogyi)
  703. Date: Mon, 20 Jun 1994 06:32:10 GMT
  704. Organization: Digital Media
  705.  
  706. In article <jonpughCrJGIA.B08@netcom.com>, jonpugh@netcom.com (Jon Pugh) wrote:
  707.  
  708. > Open Transport (remember them? You got a T shirt at the netter's dinner)
  709. > is only intended to replace MacTCP and the software layers, not the
  710. > actual AppleTalk protocol.
  711.  
  712. Nonono!
  713.  
  714. OpenTransport comes with brand new protocol stacks for both AppleTalk and
  715. TCP/IP.
  716.  
  717. OT has a compatibility mode that allows existing software using today's
  718. AppleTalk and MacTCP API's to function, but internally it's all new stuff.
  719. OT will also be the only native AppleTalk protocol stack.
  720.  
  721. Back to Matt's original question: even if they ban AppleTalk off the
  722. backbone, you can still use it locally; it just won't be propagated
  723. through the router that connects you to the rest of your organization.
  724. This isn't necessarily a fundamentally Bad Thing -- it depends on whether
  725. you use AppleTalk services that are on the far end of your backbone
  726. router.
  727.  
  728. ____________________________________________________________________________
  729. Stephan Somogyi             Vorsprung durch Technik            Digital Media
  730.  
  731. +++++++++++++++++++++++++++
  732.  
  733. >From somogyi@ziff.com (Stephan Somogyi)
  734. Date: Mon, 20 Jun 1994 06:33:31 GMT
  735. Organization: Digital Media
  736.  
  737. In article <doc-170694174449@163.176.12.68>, doc@miracle.farallon.com
  738. (eric doc kampman) wrote:
  739.  
  740. > uh oh.  anybody know what this means for custom 'mdev's?  (alternate LAP
  741. > layer interfaces for MacTCP).
  742.  
  743. Check out the OpenTransport docs on the WWDC CD. Methinks there should be
  744. some info in there on how such stuff is handled under OT.
  745.  
  746. ____________________________________________________________________________
  747. Stephan Somogyi             Vorsprung durch Technik            Digital Media
  748.  
  749. +++++++++++++++++++++++++++
  750.  
  751. >From poorman@convex.com (Peter W. Poorman)
  752. Date: 20 Jun 94 16:50:10 GMT
  753. Organization: CONVEX Computer Corporation, Richardson, TX USA
  754.  
  755. In <doc-170694174449@163.176.12.68> doc@miracle.farallon.com (eric doc kampman) writes:
  756.  
  757. >uh oh.  anybody know what this means for custom 'mdev's?  (alternate LAP
  758. >layer interfaces for MacTCP).
  759.  
  760. The docs I looked at said that custom mdevs would NOT be supported.  This
  761. may have changed -- it's been awhile.  The docs were ftp-able from
  762. seeding.apple.com.
  763.  
  764. -- Pete
  765.    poorman@convex.com
  766.  
  767. +++++++++++++++++++++++++++
  768.  
  769. >From gabe@shiva.com (Gabriel Lawrence)
  770. Date: Mon, 20 Jun 94 21:47:28 GMT
  771. Organization: Shiva Corporation
  772.  
  773. >>uh oh.  anybody know what this means for custom 'mdev's?  (alternate LAP
  774. >>layer interfaces for MacTCP).
  775. >
  776. >The docs I looked at said that custom mdevs would NOT be supported.  This
  777. >may have changed -- it's been awhile.  The docs were ftp-able from
  778. >seeding.apple.com.
  779.  
  780. As far as I can know, adevs, mdevs, and CommToolBox tools are all rendered
  781. obsolete by the Open Transport architecture.
  782.  
  783. Adevs and mdevs are both LAP layer protocol switching mechanisms which are
  784. redundant under Streams.  In general, Streams allows a lot more flexibility
  785. in constructing protocol stacks.  Rather than just switching among the
  786. bottom (LAP) layers, you can construct a complete custom stack that contains
  787. the protocol layers you need to use.  This design also allows you to run
  788. multiple protocol stacks simultaneously.
  789.  
  790. CTB tools are considered flawed because you cannot layer them.  Personally,
  791. I never much cared for the interfaces either.  Streams provides a standard
  792. way to layer modules so that you can customize your comm tools to your
  793. hearts content.
  794.  
  795. =Gabe=
  796.  
  797. - ----------------------
  798. Gabriel Lawrence                                               Shiva Corporation
  799. Software Tool               "All Disclaimers Apply"             gabe@shiva.com  
  800.  
  801. +++++++++++++++++++++++++++
  802.  
  803. >From quinn@cs.uwa.edu.au (Quinn "The Eskimo!")
  804. Date: Tue, 21 Jun 1994 16:11:01 +0800
  805. Organization: Department of Computer Science, The University of Western Australia
  806.  
  807. In article <1994Jun20.171551.29956@waikato.ac.nz>, ldo@waikato.ac.nz
  808. (Lawrence D'Oliveiro, Waikato University) wrote:
  809.  
  810. >AppleTalk still remains the world's easiest-to-use local area networking
  811. >protocol. No contest.
  812.  
  813. Definitely.  Until you want to change zones names of course ):
  814. -- 
  815. Quinn "The Eskimo!"      <quinn@cs.uwa.edu.au>     "Support HAVOC!"
  816. Department of Computer Science, The University of Western Australia
  817.   Who's changed zone names twice in the past year and is getting
  818.   very bitter and twisted about it.
  819.  
  820. +++++++++++++++++++++++++++
  821.  
  822. >From garryh@seeding.apple.com (Garry Hornbuckle)
  823. Date: 21 Jun 1994 16:17:55 GMT
  824. Organization: Apple Computer
  825.  
  826. > In article <doc-170694174449@163.176.12.68>, doc@miracle.farallon.com
  827. > (eric doc kampman) wrote:
  828. > > uh oh.  anybody know what this means for custom 'mdev's?  (alternate LAP
  829. > > layer interfaces for MacTCP).
  830.  
  831. 1 - AppleTalk is not going away or dying. Apple still feels that AppleTalk
  832. is important and useful. 
  833.  
  834. 2 - We are making a conscious effort at bringing our support of other
  835. protocols, especially TCP/IP, a more visibile and 'expected' thing. Such as
  836. moving MacTCP into system software. I'd like people to begin to think of
  837. the Macintosh as not just the machine with 'built-in networking', but the
  838. machine with 'multiprotocol built-in networking'
  839.  
  840. 3 - Down with protocol prejudice of all kinds. AppleTalk, TCP/IP, etc. each
  841. have their strengths and weaknesses. Perhaps even more importantly, they
  842. were designed with different goals and different environments in mind. One
  843. size does not fit all.
  844.  
  845. 4 - Open Transport is designed to make it easier to write one application
  846. that can use the protocol of choice (AppleTalk, TCP, IPX, etc.) without
  847. having to make changes to the program source code to change protocols. It
  848. does this by providing a common set of APIs, and by offering a very fast
  849. dynamic linking and loading mechanism. An application that is written to
  850. the new APIs can then "make up its mind" about the protocol it wants at run
  851. time.
  852.  
  853. 5 - Open Transport will offer outstanding backward compatibility for those
  854. developers that write to the AppleTalk and MacTCP parameter block APIs, and
  855. for those developers who write 'adevs', who write to .enet, .tokn, etc. and
  856. who write to the LAPManager. 
  857.  
  858. 6 - mdev backward compatibility is still under review. We'd like to figure
  859. this out, but there are some hard problems. I have a list of the 'top 10'
  860. (like the SLIP and PPP mdevs). But if there are other mdevs out there, it
  861. would be helpful  if you'd send me an email letting me know about you mdev
  862. and your backward compatibility needs and desires....
  863.  
  864. 7 - As Stephan said, more info is available on Open Trnasport by anonymous
  865. ftp to 'seeding.apple.com.
  866.  
  867. - ---------------------------------------------------------------------
  868. Garry Hornbuckle        Product Manager, Communications & Collaboration
  869. - ---------------------------------------------------------------------
  870. "If I told you that I   | email      garryh@seeding.apple.com
  871.  spoke only for myself  | applelink  HORNBUCKLE1
  872.  would you believe me?" | fax        (408) 974-1211
  873. - ---------------------------------------------------------------------
  874.  
  875. +++++++++++++++++++++++++++
  876.  
  877. >From gabe@shiva.com (Gabriel Lawrence)
  878. Date: Wed, 22 Jun 94 04:42:11 GMT
  879. Organization: Shiva Corporation
  880.  
  881. >>AppleTalk still remains the world's easiest-to-use local area networking
  882. >>protocol. No contest.
  883. >
  884. >Definitely.  Until you want to change zones names of course ):
  885.  
  886. I would agree.  Unfortunately, the biggest advantage to using AppleTalk (its
  887. dynamic configurability) is also it's biggest drawback.  The "user
  888. friendliness" of AppleTalk prevents it from scaling well.  Intelligent
  889. routers that "learn" things like zone names are great - until your network
  890. becomes very large and you want to change zone names or network numbers. 
  891. Then you have to go through a tedious process of shutting down routers,
  892. restarting seed routers, etc...  It's certainly no picnic.
  893.  
  894. Emerging AppleTalk standards like AURP help to alleviate some of these
  895. difficulties but they all work by imposing some sort of static network
  896. mapping on interconnected networks.  That of course means that these are
  897. typically not "plug and play" solutions.  Oh well.
  898.  
  899. =Gabe=
  900.  
  901.  
  902. - ----------------------------------------------------------------
  903. Gabriel Lawrence                                    gabe@shiva.com
  904.                             Software Tool                                       
  905.                           Shiva Corporation
  906.  
  907. ---------------------------
  908.  
  909. >From Peter Vanags <peterv@uclink.berkeley.edu>
  910. Subject: CodeWarrior and CODE Resources
  911. Date: 23 Jun 1994 01:41:23 GMT
  912. Organization: UCB
  913.  
  914. >From reading all the raves about CodeWarrior here, I have no doubt that
  915. it's the environment of choice for applications development. But what
  916. about stand-alone CODE resource development?
  917.  
  918. Symantec's environment doesn't really give me all of what I need. Their
  919. C++ compiler doesn't support virtual functions in CODE resources, which
  920. dramatically cripples the object design. I can use C with Object
  921. Extensions to get virtual functions, but then I lose lots of desireable
  922. C++ features, like templates, constructor arguments, multiple
  923. inheritance, passing by reference, and so on. But I do get inline
  924. assembler in switching back to C. The A4-based globals in Symantec's
  925. environment are a great feature.
  926.  
  927. Does CodeWarrior support A4 globals like Symantec? How about inline (not
  928. function-call) assembler in C++? (Very important due to strange calling
  929. conventions of some CODE resources.) Custom CODE resource headers? (This
  930. would probably require inline assembler.) Virtual functions? The lack of
  931. templates in CW is a bummer, since I use a lot of container classes. If
  932. CW had all these features, I'd switch in a minute.
  933.  
  934. As I understand it, the only missing thing is the inline assembler. I
  935. assume it's because CW supports 68K/PPC development simultaneously. Will
  936. some clever CW feature make this possible soon? Would I have to write
  937. companion PPC assembler to the 68K stuff, and use pragmas to make sure
  938. the right version is compiled to each?
  939.  
  940. Also, how easy is it to compile these hybrid PPC/68K CODE resources in
  941. CW? I haven't delved into the PPC code fragment business yet, but to
  942. judge from the number of pages written about it in the develop article,
  943. it's not simple. What tools does CW provide to aid this process?
  944.  
  945. Peter
  946.  
  947. +++++++++++++++++++++++++++
  948.  
  949. >From Jens Miltner <jmiltner@theorie3.physik.uni-erlangen.de>
  950. Date: 24 Jun 1994 23:49:38 GMT
  951. Organization: Pole Position Software
  952.  
  953. In article <2uap83$ghe@agate.berkeley.edu> Peter Vanags,
  954. peterv@uclink.berkeley.edu writes:
  955. >From reading all the raves about CodeWarrior here, I have no doubt that
  956. >it's the environment of choice for applications development. But what
  957. >about stand-alone CODE resource development?
  958. >
  959. >Symantec's environment doesn't really give me all of what I need. Their
  960. >C++ compiler doesn't support virtual functions in CODE resources, which
  961. >dramatically cripples the object design. I can use C with Object
  962. >Extensions to get virtual functions, but then I lose lots of desireable
  963. >C++ features, like templates, constructor arguments, multiple
  964. >inheritance, passing by reference, and so on. But I do get inline
  965. >assembler in switching back to C. The A4-based globals in Symantec's
  966. >environment are a great feature.
  967.  
  968. I guess the problem with virtual functions in CODE resources is that 
  969. someone has to set up the virtual jump tables (which is usually done
  970. by the initialization code in an app - but there aint no such thing
  971. in a code resource...)
  972.  
  973. >Does CodeWarrior support A4 globals like Symantec? How about inline (not
  974. >function-call) assembler in C++? (Very important due to strange calling
  975. >conventions of some CODE resources.) Custom CODE resource headers? (This
  976. >would probably require inline assembler.) Virtual functions? The lack of
  977. >templates in CW is a bummer, since I use a lot of container classes. If
  978. >CW had all these features, I'd switch in a minute.
  979.  
  980. Yes, they do support A4 globals as well as some sort of inline assembly.
  981. The only drawback I found is that the inline assembler only works at 
  982. function level, i.e. you have to define a complete function as being
  983. inline assembler.
  984. Also, there is no way to generate CODE resources with a custom header.
  985. Each CODE resource will have a standard header (as proposed by Apple,
  986. I think). However, this means you can't write things like an RDEV, since
  987. they need some different header...
  988.  
  989. >As I understand it, the only missing thing is the inline assembler. I
  990. >assume it's because CW supports 68K/PPC development simultaneously. Will
  991. >some clever CW feature make this possible soon? Would I have to write
  992. >companion PPC assembler to the 68K stuff, and use pragmas to make sure
  993. >the right version is compiled to each?
  994.  
  995. Actually, there is little or no need to use assembler with the PowerPC,
  996. since for PPC, a C-Interface exists for all known/important functions
  997. and callbacks - even for those that used to need assembly routines.
  998.  
  999. >Also, how easy is it to compile these hybrid PPC/68K CODE resources in
  1000. >CW? I haven't delved into the PPC code fragment business yet, but to
  1001. >judge from the number of pages written about it in the develop article,
  1002. >it's not simple. What tools does CW provide to aid this process?
  1003.  
  1004. What do you mean by 'hybrid CODE resources'? If you talk about e.g.
  1005. fat binaries, there is no direct support yet. There is however an
  1006. easy way to build native CODE resources with MW.
  1007. Calling either CODE res type from either architecture is actually
  1008. not really difficult. I guess there are samples out there that show
  1009. how to use MixedMode and the CodeFragmentManager... If you've got
  1010. it right once, it's peanuts the next time ;-)
  1011.  
  1012. -- Jens
  1013.  
  1014. ---------------------------
  1015.  
  1016. >From y-tony@bu.edu (Yan Lee)
  1017. Subject: Fast full screen scrolling: impossible?
  1018. Date: 8 Jun 1994 20:59:27 GMT
  1019. Organization: Boston University
  1020.  
  1021. Hello,
  1022.  
  1023.     I have been reading a bit about animation and the Mac.  I have 
  1024. read that full screen scrolling is almost impossible to do well on the 
  1025. Mac.  I do understand that game machines have chips that specialize in 
  1026. such activities.  Howver, is it still not possible for the Mac to do it?  
  1027. Did C64 and PCs have special chips/functions that helped them to do rapid
  1028. full-screen scrolling?  I would like to try to do rapid full-screen 
  1029. scroilling on the Mac , but I am wondering if this ambition is a waste of 
  1030. time.  I need opinions please!
  1031.  
  1032. Tony
  1033.  
  1034.  
  1035. +++++++++++++++++++++++++++
  1036.  
  1037. >From d88-jwa@dront.nada.kth.se (Jon Wdtte)
  1038. Date: 9 Jun 1994 10:13:06 GMT
  1039. Organization: The Royal Institute of Technology
  1040.  
  1041. In <2t5bff$fnp@news.bu.edu> y-tony@bu.edu (Yan Lee) writes:
  1042.  
  1043. >Hello,
  1044.  
  1045. >    I have been reading a bit about animation and the Mac.  I have 
  1046. >read that full screen scrolling is almost impossible to do well on the 
  1047. >Mac.  I do understand that game machines have chips that specialize in 
  1048. >such activities.  Howver, is it still not possible for the Mac to do it?  
  1049. >Did C64 and PCs have special chips/functions that helped them to do rapid
  1050. >full-screen scrolling?  I would like to try to do rapid full-screen 
  1051.  
  1052. No; the PC instead has an "inferior" video mode with large pixels
  1053. which makes the amount of data to move smaller. The smallest Mac color
  1054. screen is 512x384 pixels, and most are 640x480 or larger (13" or more)
  1055. The PC screens are 320x200 pixels, so you have only 1/4 as many pixels
  1056. to move. On the other hand, Mac graphics are much less blocky.
  1057.  
  1058. On the PowerPC, scrolling 640x400 or so is quite doable; put interesting
  1059. borders around it if you want even better FPS (smaller area)
  1060.  
  1061. Cheers,
  1062.  
  1063.                     / h+
  1064.                     Jon W{tte
  1065. -- 
  1066.  -- Jon W{tte, h+@nada.kth.se, Mac Software Engineer Deluxe --
  1067.  
  1068.   I offer a pot of gold for Gates' head on a pole.
  1069.   Naah - bashing Microsoft is "out." Love, Peace and Understanding!
  1070.  
  1071. +++++++++++++++++++++++++++
  1072.  
  1073. >From fixer@faxcsl.dcrt.nih.gov (Chris Gonna' Find Ray Charles Tate)
  1074. Date: Thu, 9 Jun 1994 12:33:48 GMT
  1075. Organization: DCRT, NIH, Bethesda, MD
  1076.  
  1077. In article <2t5bff$fnp@news.bu.edu>, y-tony@bu.edu (Yan Lee) writes:
  1078. >
  1079. >    I have been reading a bit about animation and the Mac.  I have 
  1080. >read that full screen scrolling is almost impossible to do well on the 
  1081. >Mac.  I do understand that game machines have chips that specialize in 
  1082. >such activities.  Howver, is it still not possible for the Mac to do it?  
  1083. >Did C64 and PCs have special chips/functions that helped them to do rapid
  1084. >full-screen scrolling?  I would like to try to do rapid full-screen 
  1085. >scroilling on the Mac , but I am wondering if this ambition is a waste of 
  1086. >time.  I need opinions please!
  1087.  
  1088. The Commodore 64 had special hardware that allowed the programmer to
  1089. shift the screen, either horizontally or vertically or both (independantly),
  1090. in one-pixel increments, up to a delta of 8 pixels from 'normal.'  In
  1091. combination with 32x32 hardware sprites and funky text-based graphics
  1092. modes, this made relatively advanced graphics quite feasible even on
  1093. the old CBM 6510 chip that it used.
  1094.  
  1095. PC graphics cheat.  :-)  They use a low resolution graphics mode.  DOOM,
  1096. for example (the premier animated DOS game at present), draws the screen
  1097. at 320x200 pixels.  Note that the smallest Macintosh screen is 512x342,
  1098. which is more than twice as many pixels as 320x200.  A 640x400 screen
  1099. is four times as many, and the (fairly standard) 640x480 screen is even
  1100. more than that.
  1101.  
  1102. PowerMacs have the horsepower to scroll large portions of the screen
  1103. at once.
  1104.  
  1105. - --------------------------------------------------------------------------
  1106. Christopher Tate             |  "There are 0 grams of fat in Mountain Dew.
  1107. MSD, Inc.                    |    That means it's good for you, right?"
  1108. fixer@faxcsl.dcrt.nih.gov    |         - Mike Wellman, in c.s.m.p
  1109.  
  1110. +++++++++++++++++++++++++++
  1111.  
  1112. >From y-tony@bu.edu (Yan Lee)
  1113. Date: 9 Jun 1994 14:59:00 GMT
  1114. Organization: Boston University
  1115.  
  1116. Chris Gonna' Find Ray Charles Tate (fixer@faxcsl.dcrt.nih.gov) wrote:
  1117. : In article <2t5bff$fnp@news.bu.edu>, y-tony@bu.edu (Yan Lee) writes:
  1118. : >
  1119.  
  1120. : The Commodore 64 had special hardware that allowed the programmer to
  1121. : shift the screen, either horizontally or vertically or both (independantly),
  1122. : in one-pixel increments, up to a delta of 8 pixels from 'normal.'  In
  1123. : combination with 32x32 hardware sprites and funky text-based graphics
  1124. : modes, this made relatively advanced graphics quite feasible even on
  1125. : the old CBM 6510 chip that it used.
  1126.  
  1127. Oh yeah, I remember the shifting-screen stuff.  I used to do that to make 
  1128. the whole screen shake for earthquake effects :)
  1129.  
  1130.  
  1131. : PC graphics cheat.  :-)  They use a low resolution graphics mode.  DOOM,
  1132. : for example (the premier animated DOS game at present), draws the screen
  1133. : at 320x200 pixels.  Note that the smallest Macintosh screen is 512x342,
  1134. : which is more than twice as many pixels as 320x200.  A 640x400 screen
  1135. : is four times as many, and the (fairly standard) 640x480 screen is even
  1136. : more than that.
  1137.  
  1138. Is there a source code for the Mac for lowres modes?  It must be possible
  1139. since Pathways into darkness has that mode to double the speed.
  1140.  
  1141.  
  1142. : PowerMacs have the horsepower to scroll large portions of the screen
  1143. : at once.
  1144.  
  1145. Unfortunately I have no access or money for a PPC even though it is 
  1146. reasonably price.  Maybe next year....
  1147.  
  1148. : ----------------------------------------------------------------------------
  1149. : Christopher Tate             |  "There are 0 grams of fat in Mountain Dew.
  1150. : MSD, Inc.                    |    That means it's good for you, right?"
  1151. : fixer@faxcsl.dcrt.nih.gov    |         - Mike Wellman, in c.s.m.p
  1152.  
  1153.  
  1154. Thanks for all the responses.
  1155.  
  1156. +++++++++++++++++++++++++++
  1157.  
  1158. >From bericksn@ac.dal.ca
  1159. Date: 9 Jun 94 14:47:34 -0300
  1160. Organization: Dalhousie University, Halifax, Nova Scotia, Canada
  1161.  
  1162. In article <2t5bff$fnp@news.bu.edu>, y-tony@bu.edu (Yan Lee) writes:
  1163. > Hello,
  1164. >     I have been reading a bit about animation and the Mac.  I have 
  1165. > read that full screen scrolling is almost impossible to do well on the 
  1166. > Mac.  I do understand that game machines have chips that specialize in 
  1167. > such activities.  Howver, is it still not possible for the Mac to do it?  
  1168. > Did C64 and PCs have special chips/functions that helped them to do rapid
  1169. > full-screen scrolling?  I would like to try to do rapid full-screen 
  1170. > scroilling on the Mac , but I am wondering if this ambition is a waste of 
  1171. > time.  I need opinions please!
  1172. Machines like the C64 have hardware assistance, and PCs have a 320x200
  1173. graphics mode & page flipping. It's still possible on the Mac, though--check
  1174. out the demo for Deliverance. The technique the programmer uses seems to
  1175. be to render frames at 320x200 and then blow them up. It still looks pretty
  1176. good, it was very playable at 640x400x16 on my LC 475. You'd have to do
  1177. a lot of assembly optimization to get such performance, I'd bet.
  1178.  
  1179. Sean
  1180.  
  1181. +++++++++++++++++++++++++++
  1182.  
  1183. >From ldo@waikato.ac.nz (Lawrence D'Oliveiro, Waikato University)
  1184. Date: 10 Jun 94 16:30:59 +1200
  1185. Organization: University of Waikato, Hamilton, New Zealand
  1186.  
  1187. In article <2t6pvi$oie@news.kth.se>, d88-jwa@dront.nada.kth.se (Jon Wdtte) writes:
  1188. > In <2t5bff$fnp@news.bu.edu> y-tony@bu.edu (Yan Lee) writes:
  1189. >
  1190. >>    I have been reading a bit about animation and the Mac.  I have
  1191. >>read that full screen scrolling is almost impossible to do well on the
  1192. >>Mac.  I do understand that game machines have chips that specialize in
  1193. >>such activities.  Howver, is it still not possible for the Mac to do it?
  1194. >>Did C64 and PCs have special chips/functions that helped them to do rapid
  1195. >>full-screen scrolling?
  1196. >
  1197. > No; the PC instead has an "inferior" video mode with large pixels
  1198. > which makes the amount of data to move smaller. The smallest Mac color
  1199. > screen is 512x384 pixels, and most are 640x480 or larger (13" or more)
  1200. > The PC screens are 320x200 pixels, so you have only 1/4 as many pixels
  1201. > to move. On the other hand, Mac graphics are much less blocky.
  1202.  
  1203. Here's a thought: some Macs have a hardware pixel-doubling feature built into
  1204. their on-board video (I think the IIvi and IIvx have it). This was introduced
  1205. for use with QuickTime, but as I recall the driver calls are documented in
  1206. some QuickTime release notes somewhere, so you could use it for other
  1207. purposes...
  1208.  
  1209. Lawrence D'Oliveiro                       fone: +64-7-856-2889
  1210. Info & Tech Services Division              fax: +64-7-838-4066
  1211. University of Waikato            electric mail: ldo@waikato.ac.nz
  1212. Hamilton, New Zealand    37^ 47' 26" S, 175^ 19' 7" E, GMT+12:00
  1213.  
  1214. +++++++++++++++++++++++++++
  1215.  
  1216. >From mgr@aggroup.aggroup.com (Mike Russell)
  1217. Date: Fri, 10 Jun 1994 12:43:32 -0800
  1218. Organization: the ag group, inc.
  1219.  
  1220. Live scrolling, where the text moves immediately instead after the thumb
  1221. is released, is no problem on Mac or PC.  Processor speed has more
  1222. than kept up with increases in display depth and resolution.
  1223.  
  1224. Several years ago live scrolling was considered not Mac-like.  Now it
  1225. seems to be accepted.
  1226.  
  1227. +++++++++++++++++++++++++++
  1228.  
  1229. >From ingemar@lysator.liu.se (Ingemar Ragnemalm)
  1230. Date: 11 Jun 1994 07:50:43 GMT
  1231. Organization: (none)
  1232.  
  1233. y-tony@bu.edu (Yan Lee) writes:
  1234.  
  1235. >    I have been reading a bit about animation and the Mac.  I have 
  1236. >read that full screen scrolling is almost impossible to do well on the 
  1237. >Mac.  I do understand that game machines have chips that specialize in 
  1238. >such activities.  Howver, is it still not possible for the Mac to do it?  
  1239.  
  1240. I'm afraid it is impossible, except perhaps on some video boards. In general,
  1241. you must do it by rewriting the entire screen every frame. CopyBitsing
  1242. the entire screen won't be fast enough, and writing a custom blitter doesn't
  1243. help much, if at all.
  1244.  
  1245. The options you have are:
  1246.  
  1247. - Make it possible to step down to fewer bits per pixel. Running in 16
  1248. colors instead of 256 means twice the speed. Actually, it is possible to
  1249. make decent scrolling in 16 colors in a 512*340 area on a slow LC. In
  1250. b/w, it's 8 times faster!
  1251.  
  1252. - Make your graphics in a way that makes it possible to update only some
  1253. parts of the screen for each frame. That means big smooth areas. Sky
  1254. Shadow used that trick (but still didn't get quite the frame rate we
  1255. had ideally wanted), and so did OIDS.
  1256.  
  1257. - Run in a rather small area. This is what Bolo does.
  1258.  
  1259. --
  1260. - -
  1261. Ingemar Ragnemalm, PhD
  1262. Image processing, Mac shareware games
  1263. E-mail address: ingemar@isy.liu.se or ingemar@lysator.liu.se
  1264.  
  1265. +++++++++++++++++++++++++++
  1266.  
  1267. >From alex@metcalf.demon.co.uk (Alex Metcalf)
  1268. Date: Sat, 11 Jun 1994 10:50:42 GMT
  1269. Organization: Best Before Yesterday
  1270.  
  1271. In article <mgr-100694124332@mike.aggroup.com>, mgr@aggroup.aggroup.com
  1272. (Mike Russell) wrote:
  1273.  
  1274. > Live scrolling, where the text moves immediately instead after the thumb
  1275. > is released, is no problem on Mac or PC.  Processor speed has more
  1276. > than kept up with increases in display depth and resolution.
  1277. > Several years ago live scrolling was considered not Mac-like.  Now it
  1278. > seems to be accepted.
  1279.  
  1280. I missed the original post, but if it's about full screen scrolling at
  1281. 30fps, that's still pretty much impossible. There are several solutions
  1282. people have used, such as the draw-every-other-line approach in Deliverance
  1283. to improve speed on slower Macs. Also, QuickTime 2 does it, though that
  1284. doesn't count (I think it doesn't really redraw all the screen all the
  1285. time).
  1286.  
  1287. Someone sent me a test result from a PowerMac: straight blitting a 640x480
  1288. image to the screen and doing nothing else, the frame rate was only about
  1289. 25fps. Games would also do lots of drawing offscreen.
  1290.  
  1291.  
  1292.  
  1293. Alex
  1294.  
  1295. --
  1296. Alex Metcalf, Best Before Yesterday
  1297. Mac programmer in C, C++, HyperTalk, assembler
  1298. Juggler, 3-ball tricks
  1299.  
  1300. Internet:          alex@metcalf.demon.co.uk
  1301. Fax (UK):          (0570) 45636
  1302. Fax (US / Canada): 011 44 570 45636
  1303.  
  1304. +++++++++++++++++++++++++++
  1305.  
  1306. >From misc173@csc.canterbury.ac.nz
  1307. Date: 13 Jun 94 10:33:49 +1200
  1308. Organization: University of Canterbury, Christchurch, New Zealand
  1309.  
  1310.  
  1311. > I missed the original post, but if it's about full screen scrolling at
  1312. > 30fps, that's still pretty much impossible. There are several solutions
  1313. > people have used, such as the draw-every-other-line approach in Deliverance
  1314. > to improve speed on slower Macs. Also, QuickTime 2 does it, though that
  1315. > doesn't count (I think it doesn't really redraw all the screen all the
  1316. > time).
  1317. > Someone sent me a test result from a PowerMac: straight blitting a 640x480
  1318. > image to the screen and doing nothing else, the frame rate was only about
  1319. > 25fps. Games would also do lots of drawing offscreen
  1320.  
  1321.     I couldn't believe this post when I read it yesterday, so I went home
  1322. and wrote a 640x480x8bit RAM scroller, it starts at 0 and scrolls up through
  1323. RAM, copying it to the screen, one line per frame. It got 40 fps on my 605, and
  1324. I know that it could be optimised more, unrolling the inner loop, etc. I tried
  1325. a variety of resolutions and interpolation techniques and gained some
  1326. interesting insights. If you reduce the screen size the speed increases
  1327. proportionaly, 320x240x8bit at 150fps. Using alternate lines doubles the speed
  1328. again ( and looks fairly good against black ), pixel doubling is very slow, I
  1329. havent tried using movep yet, but it should speed things up ( if it works ).
  1330.     This routine uses only move.l, as I intend to program for 040's I will
  1331. try move16, which should speed things up about 3x.
  1332.     The final conclusion is that whoever wrote that ppc blitter ain't very
  1333. good, I know enough assembly to this, and other simple graphics routines, but
  1334. it still goes reasonably fast ( at least 10% faster than copybits ). Full
  1335. screen scrolling is possible, and if someone asks for it I'll even post my
  1336. code.
  1337.  
  1338. Jon.
  1339.  
  1340.  
  1341. +++++++++++++++++++++++++++
  1342.  
  1343. >From ivanski@world.std.com (Ivan M CaveroBelaunde)
  1344. Date: Mon, 13 Jun 1994 00:13:44 GMT
  1345. Organization: The World Public Access UNIX, Brookline, MA
  1346.  
  1347. ldo@waikato.ac.nz (Lawrence D'Oliveiro, Waikato University) writes:
  1348. >> No; the PC instead has an "inferior" video mode with large pixels
  1349. >> which makes the amount of data to move smaller. The smallest Mac color
  1350. >> screen is 512x384 pixels, and most are 640x480 or larger (13" or more)
  1351. >> The PC screens are 320x200 pixels, so you have only 1/4 as many pixels
  1352. >> to move. On the other hand, Mac graphics are much less blocky.
  1353. >Here's a thought: some Macs have a hardware pixel-doubling feature built into
  1354. >their on-board video (I think the IIvi and IIvx have it). This was introduced
  1355. >for use with QuickTime, but as I recall the driver calls are documented in
  1356. >some QuickTime release notes somewhere, so you could use it for other
  1357. >purposes...
  1358.  
  1359. Yeah, this feature is available - it's not, however, widely available
  1360. enough to be of any use to anyone writing games. It is *definitely* in the
  1361. LC II and the Color Classic (I think you're right about the vi/vx, but
  1362. not altogether sure). It actually went in at first *only* because it was
  1363. needed by the Apple IIe card and was undocumented (ie twiddle this
  1364. memory mapped register) until QT 1.5, where video driver calls for them
  1365. were defined, as well as the GDHasScale/GetScale/SetScale calls. Oh, at
  1366. least in the LC II it only works in 16bpp mode, which is another problem
  1367. (since the flimsy VRAM capacity allows 16bpp only with the 12-inch
  1368. monitor, which most people don't have anyway). So although the feature is
  1369. there in theory, it is useless for practical purposes for games.
  1370.  
  1371. Plus the fact that the 16bpp restriction means that at quarter screen zoom
  1372. you're blasting the same amount of memory as if you were doing half-screen
  1373. "letterboxed" at the non-hw-zoom resolution. Plus the fact that the LC II
  1374. has the crippled 16-bit-wide data bus to the CPU, adding to the problem.
  1375. Plus ... nah, I could go on ...
  1376.  
  1377. I'd explore instead the trick the MacPlay people mentioned at the WWDC
  1378. that is used in AstroChase 3D: interlaced animation, which allows you
  1379. to blast every other line in a given animation frame, cutting your
  1380. blitting bandwith needs by half...
  1381.  
  1382. -Ivan
  1383. - -
  1384. Ivan Cavero Belaunde (ivanski@world.std.com)
  1385. Avid VideoShop Project Lead
  1386. Avid Technology, Inc.
  1387.  
  1388. +++++++++++++++++++++++++++
  1389.  
  1390. >From 103t_english@west.cscwc.pima.edu
  1391. Date: 12 Jun 94 18:28:03 MST
  1392. Organization: (none)
  1393.  
  1394. In article <1994Jun13.103349.1@csc.canterbury.ac.nz>, misc173@csc.canterbury.ac.nz writes:
  1395. >> I missed the original post, but if it's about full screen scrolling at
  1396. >> 30fps, that's still pretty much impossible. There are several solutions
  1397. >> people have used, such as the draw-every-other-line approach in Deliverance
  1398. >> to improve speed on slower Macs. Also, QuickTime 2 does it, though that
  1399. >> doesn't count (I think it doesn't really redraw all the screen all the
  1400. >> time).
  1401. >> 
  1402. >> Someone sent me a test result from a PowerMac: straight blitting a 640x480
  1403. >> image to the screen and doing nothing else, the frame rate was only about
  1404. >> 25fps. Games would also do lots of drawing offscreen
  1405. >     I couldn't believe this post when I read it yesterday, so I went home
  1406. > and wrote a 640x480x8bit RAM scroller, it starts at 0 and scrolls up through
  1407. > RAM, copying it to the screen, one line per frame. It got 40 fps on my 605, and
  1408. > I know that it could be optimised more, unrolling the inner loop, etc. I tried
  1409. > a variety of resolutions and interpolation techniques and gained some
  1410. > interesting insights. If you reduce the screen size the speed increases
  1411. > proportionaly, 320x240x8bit at 150fps. Using alternate lines doubles the speed
  1412. > again ( and looks fairly good against black ), pixel doubling is very slow, I
  1413. > havent tried using movep yet, but it should speed things up ( if it works ).
  1414. >     This routine uses only move.l, as I intend to program for 040's I will
  1415. > try move16, which should speed things up about 3x.
  1416. >     The final conclusion is that whoever wrote that ppc blitter ain't very
  1417. > good, I know enough assembly to this, and other simple graphics routines, but
  1418. > it still goes reasonably fast ( at least 10% faster than copybits ). Full
  1419. > screen scrolling is possible, and if someone asks for it I'll even post my
  1420. > code.
  1421. > Jon.
  1422.  
  1423. d e v e l o p 18 claims that the PPC blitter that they used was slower than
  1424. CopyBits because it didn't (presumably, for some unknown reason, *couldn't*)
  1425. take advantage of the 64-bit path of video. For this same reason, *BlockMove*
  1426. was also slower.
  1427.  
  1428. What is going on with the memory subsystem in the PowerMacs? Is it or isn't it
  1429. 64-bit? Is the DRAM video 64-bit? Is the AV video? Is the non-AV PDS video?
  1430.  
  1431.  
  1432. What is the actual and theoretical maximum speeds of a customized full-screen (ala
  1433. Doom/PID game) blitter from RAM into any of the three standard videos at 8, 16
  1434. and 32-bit? (I'm aware that DRAM video can't do 32-bit -leave that entry
  1435. blank).
  1436.  
  1437.  
  1438. For that matter, why can't BlockMove move data in 64-bit chunks when it is most
  1439. optimal to do so?
  1440.  
  1441. And finally, what happened to the load/store multiple instructions that are (I
  1442. assume?) faster on the 601, but will probably be slower "in future
  1443. implementations?"
  1444.  
  1445. I assume that all the boundry conditions to make these the most efficient way
  1446. to move memory in the 601 are met by the various video options? Certainly, one
  1447. can guarantee that a buffer can meet them by insuring that the beginning
  1448. address referenced starts on a 4-K boundry?
  1449.  
  1450.  
  1451. Is CopyBIts supposed to be faster than using a sequence of load/store multiple
  1452. instructions on the 601? (the article in d e v e l o p already suggested that
  1453. one should test for maximum speed anyways, so what harm to optimize for the
  1454. 601?)
  1455.  
  1456.  
  1457. Lawson
  1458.  
  1459. +++++++++++++++++++++++++++
  1460.  
  1461. >From seanmcd@ac.dal.ca
  1462. Date: 12 Jun 94 23:22:57 -0300
  1463. Organization: Dalhousie University, Halifax, Nova Scotia, Canada
  1464.  
  1465. In article <CrB7Aw.6E3@world.std.com>, ivanski@world.std.com (Ivan M CaveroBelaunde) writes:
  1466. > I'd explore instead the trick the MacPlay people mentioned at the WWDC
  1467. > that is used in AstroChase 3D: interlaced animation, which allows you
  1468. > to blast every other line in a given animation frame, cutting your
  1469. > blitting bandwith needs by half...
  1470. I think Chuck Yeager's Air Combat does this too. You can see interlacing
  1471. in the terrain if you rock the plane back and forth.
  1472.  
  1473. Sean
  1474.  
  1475. +++++++++++++++++++++++++++
  1476.  
  1477. >From Cameron Esfahani <dirty@apple.com>
  1478. Date: Mon, 13 Jun 1994 05:47:46 GMT
  1479. Organization: Apple Computer, Inc.
  1480.  
  1481. In article <RANG.94Jun12213306@icicle.winternet.com> Anton Rang,
  1482. rang@winternet.com writes:
  1483. >   Unless you're using the floating-point registers, you can't use the
  1484. > full 64-bit path efficiently, because there's no 64-bit integer load.
  1485. > I haven't looked at NQDCopyBits to see if it uses the FP registers; I
  1486. > suppose that it *could*, in cases where there is no scaling, shifting,
  1487. > etc. but it seems unlikely that it would.
  1488.  
  1489.  
  1490.  
  1491. It does...
  1492.  
  1493. Cameron Esfahani
  1494. dirty@apple.com
  1495.  
  1496. +++++++++++++++++++++++++++
  1497.  
  1498. >From d88-jwa@mumrik.nada.kth.se (Jon Wdtte)
  1499. Date: 13 Jun 1994 06:44:15 GMT
  1500. Organization: The Royal Institute of Technology
  1501.  
  1502. In <1994Jun13.103349.1@csc.canterbury.ac.nz> misc173@csc.canterbury.ac.nz writes:
  1503.  
  1504. >again ( and looks fairly good against black ), pixel doubling is very slow, I
  1505.  
  1506. Pixel doubling is not slow; remember; you only have to read one
  1507. quarter as much memory. A co-worker of mine blits 320x200 into
  1508. 640x400, using C, in 21 milliseconds for a 48 fps frame rate.
  1509. Using the interesting bit-splice instructions in the 601, you'd
  1510. probably get even better frame rates; no current Mac C compiler
  1511. knows those instructions :-)
  1512.  
  1513. -- 
  1514.  -- Jon W{tte, h+@nada.kth.se, Mac Software Engineer Deluxe --
  1515.  "Don't stick a Fork in your Eye."
  1516.  
  1517. +++++++++++++++++++++++++++
  1518.  
  1519. >From stay@park.uvsc.edu (Steve Taylor)
  1520. Date: Mon, 13 Jun 1994 16:17:47 GMT
  1521. Organization: Utah Valley State College, Orem, Utah
  1522.  
  1523. >From article <1994Jun12.232257.24853@dal1>, by seanmcd@ac.dal.ca:
  1524. > In article <CrB7Aw.6E3@world.std.com>, ivanski@world.std.com (Ivan M CaveroBelaunde) writes:
  1525. >> 
  1526. >> I'd explore instead the trick the MacPlay people mentioned at the WWDC
  1527. >> that is used in AstroChase 3D: interlaced animation, which allows you
  1528. >> to blast every other line in a given animation frame, cutting your
  1529. >> blitting bandwith needs by half...
  1530. >> 
  1531. > I think Chuck Yeager's Air Combat does this too. You can see interlacing
  1532. > in the terrain if you rock the plane back and forth.
  1533. > Sean
  1534.  
  1535. Could someone describe this technique in more detail?  Are you talking
  1536. about leaving the other lines there and blitting the other half or
  1537. are you talking about doubling the height of the lines or what?
  1538. Thanks.
  1539.  
  1540. -- 
  1541. -- Steve Taylor (stay@wahoo.com  or  stay@park.uvsc.edu)
  1542. --
  1543. -- Life is the Dress Rehearsal for Hell.
  1544. --
  1545.  
  1546. +++++++++++++++++++++++++++
  1547.  
  1548. >From amanda@intercon.com (Amanda Walker)
  1549. Date: Mon, 13 Jun 1994 14:05:46 -0500
  1550. Organization: InterCon Systems Corporation, Herndon, VA  USA
  1551.  
  1552. y-tony@bu.edu (Yan Lee) writes:
  1553. > Is there a source code for the Mac for lowres modes?  It must be 
  1554. > possible since Pathways into darkness has that mode to double the speed. 
  1555.  
  1556. Pathways does this in software.  It renders offscreen at half resolution, and 
  1557. then doubles the pixels in software before putting them on the screen.
  1558.  
  1559.  
  1560. Amanda Walker
  1561. InterCon Systems Corporation
  1562.  
  1563.  
  1564.  
  1565. +++++++++++++++++++++++++++
  1566.  
  1567. >From mxmora@unix.sri.com (Matt Mora)
  1568. Date: 13 Jun 1994 13:22:29 -0700
  1569. Organization: SRI International, Menlo Park, CA
  1570.  
  1571. In article <1994Jun13.103349.1@csc.canterbury.ac.nz> misc173@csc.canterbury.ac.nz writes:
  1572.  
  1573. >    The final conclusion is that whoever wrote that ppc blitter ain't very
  1574. >good, I know enough assembly to this, and other simple graphics routines, but
  1575. >it still goes reasonably fast ( at least 10% faster than copybits ). Full
  1576. >screen scrolling is possible, and if someone asks for it I'll even post my
  1577. >code.
  1578.  
  1579.  
  1580. Well, post your code then. I'll run it on my 8100 and see how fast your
  1581. hand tuned assember is running emulated. If you have the c code, I can 
  1582. recompile it and see if it faster than CopyBits. 
  1583.  
  1584. Here's a clue use a fp register.
  1585.  
  1586.  
  1587. Anyway, I'm tweeking the PPC blitter code to try an experiment using the 
  1588. dirty rectangle approach for animation using the PPC blitter to blit
  1589. a fixed sized rect to the screen when that rect becomes dirty. The question
  1590. is when drawing in the gWorld, whats a fast way to flag that a rect has become
  1591. dirty?
  1592.  
  1593.  
  1594.  
  1595. Xavier
  1596.  
  1597.  
  1598.  
  1599.  
  1600. -- 
  1601. ___________________________________________________________
  1602. Matthew Xavier Mora                       Matt_Mora@sri.com
  1603. SRI International                       mxmora@unix.sri.com
  1604. 333 Ravenswood Ave                    Menlo Park, CA. 94025
  1605.  
  1606. +++++++++++++++++++++++++++
  1607.  
  1608. >From mxmora@unix.sri.com (Matt Mora)
  1609. Date: 13 Jun 1994 15:00:37 -0700
  1610. Organization: SRI International, Menlo Park, CA
  1611.  
  1612. In article <CrCFxp.79K@park.uvsc.edu> stay@park.uvsc.edu (Steve Taylor) writes:
  1613.  
  1614. >Could someone describe this technique in more detail?  Are you talking
  1615. >about leaving the other lines there and blitting the other half or
  1616. >are you talking about doubling the height of the lines or what?
  1617. >Thanks.
  1618.  
  1619.  
  1620. In astroChase 3d (or whatever its called) they paint only every other
  1621. line in the screen display. This speeds up the drawing by not having to
  1622. write half the data and makes it look like your viewing the action from
  1623. a tv monitor. 
  1624.  
  1625. I'm assuming that other game is writing first the odd lines in one pass
  1626. and then the even lines in another pass. 
  1627.  
  1628. These are clever way to reduce the amount of data that needs to be written.
  1629. As programmers we try to come of with these workaround because of the basic
  1630. limitation that the Mac can't paint the screen fast enough. Plain and Simple.
  1631.  
  1632. The goal is to write as little data to the screen as possible so that we can
  1633. concentrate on the rest of the game. If you thought about it hard enough
  1634. you probaly could come up with a way to paint the whole screen but then it
  1635. wouldn't be much of a game.
  1636.  
  1637. Also, there seems to be a magic equation that we strive for that can
  1638. write the most pixels in the least amount of time. So to gain any speed
  1639. we need top find out what pixels not to draw. If on the PPC
  1640. we can write a 64 bit word to memory, in 256 colors that's 8 pixels
  1641. in a row.  So if we were going to write one pixel we might as well
  1642. write 8. So its a balance of testing to see what needs to be drawn
  1643. and just blindy drawing.
  1644.  
  1645.  
  1646. Xavier
  1647.  
  1648.  
  1649.  
  1650.  
  1651. -- 
  1652. ___________________________________________________________
  1653. Matthew Xavier Mora                       Matt_Mora@sri.com
  1654. SRI International                       mxmora@unix.sri.com
  1655. 333 Ravenswood Ave                    Menlo Park, CA. 94025
  1656.  
  1657. +++++++++++++++++++++++++++
  1658.  
  1659. >From mxmora@unix.sri.com (Matt Mora)
  1660. Date: 13 Jun 1994 16:58:42 -0700
  1661. Organization: SRI International, Menlo Park, CA
  1662.  
  1663. In article <2tif65$s62@unix.sri.com> mxmora@unix.sri.com (Matt Mora) writes:
  1664.  
  1665. >Anyway, I'm tweeking the PPC blitter code to try an experiment using the 
  1666. >dirty rectangle approach for animation using the PPC blitter to blit
  1667. >a fixed sized rect to the screen when that rect becomes dirty. The question
  1668. >is when drawing in the gWorld, whats a fast way to flag that a rect has become
  1669. >dirty?
  1670.  
  1671. Doing some quick test on a 8100/80av in 256 color mode, using the PPC blitter
  1672. in develop, it can blit approximatly 2383 8x8 rects in one tick.
  1673.  
  1674. If you want 30fps you can probably double the number of rects. This still
  1675. won't let you do scrolling backgrounds unless your real clever in designing
  1676. your backgrounds.
  1677.  
  1678.  
  1679.  
  1680. Xavier
  1681.  
  1682.  
  1683. -- 
  1684. ___________________________________________________________
  1685. Matthew Xavier Mora                       Matt_Mora@sri.com
  1686. SRI International                       mxmora@unix.sri.com
  1687. 333 Ravenswood Ave                    Menlo Park, CA. 94025
  1688.  
  1689. +++++++++++++++++++++++++++
  1690.  
  1691. >From misc173@csc.canterbury.ac.nz
  1692. Date: 14 Jun 94 13:24:59 +1200
  1693. Organization: University of Canterbury, Christchurch, New Zealand
  1694.  
  1695.  
  1696. > Pixel doubling is not slow; remember; you only have to read one
  1697. > quarter as much memory. A co-worker of mine blits 320x200 into
  1698. > 640x400, using C, in 21 milliseconds for a 48 fps frame rate.
  1699. > Using the interesting bit-splice instructions in the 601, you'd
  1700. > probably get even better frame rates; no current Mac C compiler
  1701. > knows those instructions :-).
  1702.  
  1703.     What cpu is this on, possibly an 840av, if you look at the timings 
  1704. involved you will see that doubling 320x240 to 640x480 cannot go as fast
  1705. as just moving 640x480
  1706. Moving:
  1707.     Move.l (a0)+, (a1)+
  1708.     Move.l (a0)+, (a1)+
  1709.  
  1710.     moves 8 pixels from Ptr a0 to Ptr a1. Assuming a 68000 this takes 24
  1711.     clock cycles ( I dont have timing for anything else ).
  1712.  
  1713. Expanding:
  1714.     Move.l (a0)+, d0
  1715.     ;expand the pixels into another register
  1716.     Move.l d1, (a1)+
  1717.     Move.l d2, (a1)+
  1718.  
  1719.     this uses three reg->mem operations, 8 clkcs each, 24 total. The time
  1720.     required to shift the data is just as much, and it doesn't include any
  1721.     code to double the pixels.
  1722.  
  1723.     So why use pixel doubling? Because when you're creating the offscreen 
  1724. image you only have to do a quater the work. This is the only benefit, and it 
  1725. will not outway the slowdown of the blit all the time, each case has to be
  1726. determined individually.
  1727.     Personally I'm interested in the hardware expander in some Macs, much
  1728. more potential than software.
  1729.     For those who asked for my blitter, I'll turn it into a procedure that
  1730. takes arguements and checks rowbytes and post it when I get my modem in a
  1731. couple of days.
  1732.  
  1733. Jon.
  1734. as just shifting 640x480. 
  1735.  
  1736.  
  1737. +++++++++++++++++++++++++++
  1738.  
  1739. >From seanmcd@ac.dal.ca
  1740. Date: 13 Jun 94 21:29:36 -0300
  1741. Organization: Dalhousie University, Halifax, Nova Scotia, Canada
  1742.  
  1743. In article <CrCFxp.79K@park.uvsc.edu>, stay@park.uvsc.edu (Steve Taylor) writes:
  1744. > From article <1994Jun12.232257.24853@dal1>, by seanmcd@ac.dal.ca:
  1745. >> In article <CrB7Aw.6E3@world.std.com>, ivanski@world.std.com (Ivan M CaveroBelaunde) writes:
  1746. >>> 
  1747. >>> I'd explore instead the trick the MacPlay people mentioned at the WWDC
  1748. >>> that is used in AstroChase 3D: interlaced animation, which allows you
  1749. >>> to blast every other line in a given animation frame, cutting your
  1750. >>> blitting bandwith needs by half...
  1751. >>> 
  1752. >> I think Chuck Yeager's Air Combat does this too. You can see interlacing
  1753. >> in the terrain if you rock the plane back and forth.
  1754. >> 
  1755. >> Sean
  1756. > Could someone describe this technique in more detail?  Are you talking
  1757. > about leaving the other lines there and blitting the other half or
  1758. > are you talking about doubling the height of the lines or what?
  1759. > Thanks.
  1760. Well the description given above makes AstroChase 3D sound like CYAC,
  1761. although the only thing I've seen in AstroChase 3D is the venetian blind
  1762. style, rendering the frame onto every other line. Deliverance also has the
  1763. option to do this, as does a game called Gate. It looks to me like CYAC
  1764. does interlacing, i.e., there are no black lines alternating with the
  1765. graphics, but if you rock the plane
  1766. or turn rapidly, you can see the interlacing effect fairly easy in large
  1767. polygons. I don't know enough about 3D graphics to know whether you could
  1768. actually render even/odd scanlines or whether he's just splitting an off-screen
  1769. drawing into two blits.
  1770.  
  1771. Sean
  1772.  
  1773. +++++++++++++++++++++++++++
  1774.  
  1775. >From misc173@csc.canterbury.ac.nz
  1776. Date: 14 Jun 94 23:05:14 +1200
  1777. Organization: University of Canterbury, Christchurch, New Zealand
  1778.  
  1779.  
  1780. > Well, post your code then. I'll run it on my 8100 and see how fast your
  1781. > hand tuned assember is running emulated. If you have the c code, I can 
  1782. > recompile it and see if it faster than CopyBits.  
  1783. > Here's a clue use a fp register.
  1784. > Anyway, I'm tweeking the PPC blitter code to try an experiment using the 
  1785. > dirty rectangle approach for animation using the PPC blitter to blit
  1786. > a fixed sized rect to the screen when that rect becomes dirty. The question
  1787. > is when drawing in the gWorld, whats a fast way to flag that a rect has become
  1788. > dirty?
  1789.  
  1790. Yea, I'll post it soon, please note that I dont think I know enough assembly
  1791. to optimise it very well, I'll put unrolling notes in it to keep the size
  1792. down, I dont want to pay for 160 move.l 's. 
  1793. I dont know what you're doing, but with respect to a game I'd keep a list of 
  1794. currently valid rectangles and if the movement routine does stuff set a flag
  1795. in the list to true, you could add some code to combine the updated rectangles
  1796. into one ( in non-sprite situations ), or even just asume that all sprites are
  1797. moving.
  1798.  
  1799.  
  1800. The code will be here soon, at the moment I'm netting off a Vax, with my modem, 
  1801. yes I have it, I'll be able to post much more easily.
  1802.  
  1803. Jon.
  1804.  
  1805.  
  1806.  
  1807.  
  1808. +++++++++++++++++++++++++++
  1809.  
  1810. >From d88-jwa@mumrik.nada.kth.se (Jon Wdtte)
  1811. Date: 14 Jun 1994 13:04:10 GMT
  1812. Organization: The Royal Institute of Technology
  1813.  
  1814. In <1994Jun14.132459.1@csc.canterbury.ac.nz> misc173@csc.canterbury.ac.nz writes:
  1815.  
  1816. >> Pixel doubling is not slow; remember; you only have to read one
  1817. >> quarter as much memory. A co-worker of mine blits 320x200 into
  1818. >> 640x400, using C, in 21 milliseconds for a 48 fps frame rate.
  1819.  
  1820. >    What cpu is this on, possibly an 840av, if you look at the timings 
  1821. >involved you will see that doubling 320x240 to 640x480 cannot go as fast
  1822. >as just moving 640x480
  1823.  
  1824. This was a 6100/60.
  1825.  
  1826. ....
  1827.  
  1828. >    this uses three reg->mem operations, 8 clkcs each, 24 total. The time
  1829. >    required to shift the data is just as much, and it doesn't include any
  1830. >    code to double the pixels.
  1831.  
  1832. >    So why use pixel doubling? Because when you're creating the offscreen 
  1833. >image you only have to do a quater the work. This is the only benefit, and it 
  1834.  
  1835. You can't just count clocks out of the book; overlapping reads/writes,
  1836. caches, writeback, stalls, etc etc etc all have their effect.
  1837. And doubling doesn't just mean doubling on an X axis; you double on
  1838. the Y axis as well to achieve square 2x2 pixels.
  1839.  
  1840. As long as pixel doubling N pixels in registers is faster than N*3 read
  1841. cycles in memory, you'll gain blitting speed from the doubling as well
  1842. as having much less to render. In a world of slow DRAM and fast CPUs
  1843. (PowerPC) this is really important.
  1844.  
  1845. Cheers,
  1846.  
  1847.                     / h+
  1848.  
  1849. -- 
  1850.  -- Jon W{tte, h+@nada.kth.se, Mac Software Engineer Deluxe --
  1851.     Not speaking for the Liberian Government.
  1852.  
  1853. +++++++++++++++++++++++++++
  1854.  
  1855. >From glalonde@vnet.ibm.com (Glen Lalonde)
  1856. Date: 14 Jun 1994 13:05:07 GMT
  1857. Organization: IBM Toronto Lab.
  1858.  
  1859. In a program I am working on(at home) I managed to double the frame rate
  1860. by using custom routines to draw into a off screen gworld. Using quickdraw
  1861. was just too slow. My routines just moves bytes.
  1862.  
  1863. After this is done, copybits is used to move the image to the users screen.
  1864. Even with everything aligned correctly and color tables(& index) matching,
  1865. copybits still takes way to long. I think having a 'use only quickdraw'
  1866. option will be added which will allow me to use a custom copybits unless
  1867. the user asked me not to.
  1868.  
  1869. I can't post exact frame rates since when the program runs(in none test mode)
  1870. only the part of the screen which has changed gets copybits to the users
  1871. screen. 
  1872.  
  1873. Any comments one what is the 'minimum' frame rate needed so that the
  1874. action looks reasonably smooth?
  1875.  
  1876.  
  1877. Glen.
  1878.  
  1879.  
  1880. +++++++++++++++++++++++++++
  1881.  
  1882. >From enry@dcs.qmw.ac.uk (Henry)
  1883. Date: 14 Jun 1994 16:42:39 GMT
  1884. Organization: Queen Mary & Westfield College, London, UK
  1885.  
  1886.  
  1887. Shuffling bytes about in memory just puts a huge burden on the processor
  1888. when it should be calculating something far less menial.
  1889. Why can I not change the video hardware's screen base pointer, and fill in the
  1890. newly exposed part of the screen. This eliminates as much bit copying as we
  1891. like (give enough vram set asside)...
  1892. It also has the added advantage of having an offscreen pixmap, and being
  1893. able to display it instantly without blasting bytes through the proccessor,
  1894. allowing sencible (fast) screen buffering.
  1895.  
  1896. Is it possible to reliably direct the macs hardware to a different
  1897. screen buffer?
  1898. (You can do it on a Mac512k :-)
  1899. If not, can I do it unreliably?
  1900. If not, you are all destined to fester in the mouldy crevis of a mac games
  1901. industry that has about as much chance of producing a decent game, as a 
  1902. cheese sandwich has of sneaking its way past the doorman at the Hilton.
  1903.  
  1904. Morgan,
  1905. --
  1906. Did I say I was a sardine?  Or a bus?
  1907.  
  1908.  
  1909. +++++++++++++++++++++++++++
  1910.  
  1911. >From Bruce@hoult.actrix.gen.nz (Bruce Hoult)
  1912. Date: Wed, 15 Jun 1994 03:01:36 +1200 (NZST)
  1913. Organization: (none)
  1914.  
  1915. mxmora@unix.sri.com (Matt Mora) writes:
  1916. > Anyway, I'm tweeking the PPC blitter code to try an experiment using the 
  1917. > dirty rectangle approach for animation using the PPC blitter to blit
  1918. > a fixed sized rect to the screen when that rect becomes dirty. The question
  1919. > is when drawing in the gWorld, whats a fast way to flag that a rect has become
  1920. > dirty?
  1921.  
  1922. An approach I've used:
  1923.  
  1924. keep an array with one element per scanline.  Each element consists of
  1925. two integers: the first dirty pixel in the line, and the last dirty
  1926. pixel in the line.
  1927.  
  1928. Unless there's some particular reason for always blitting a rect, I'd
  1929. just blit a scanline at a time, however much is needed.  When blitting
  1930. the line, round the start down and the end up to the nearest transfer
  1931. unit.
  1932.  
  1933. -- Bruce
  1934.  
  1935. +++++++++++++++++++++++++++
  1936.  
  1937. >From larsg@edb.tih.no (Lars Garden)
  1938. Date: 14 Jun 1994 18:03:14 GMT
  1939. Organization: Trondheim College of Engineering
  1940.  
  1941. Jon Wdtte (d88-jwa@dront.nada.kth.se) wrote:
  1942. : In <2t5bff$fnp@news.bu.edu> y-tony@bu.edu (Yan Lee) writes:
  1943.  
  1944. : >Hello,
  1945.  
  1946. : >    I have been reading a bit about animation and the Mac.  I have 
  1947. : >read that full screen scrolling is almost impossible to do well on the 
  1948. : >Mac.  I do understand that game machines have chips that specialize in 
  1949. : >such activities.  Howver, is it still not possible for the Mac to do it?  
  1950. : >Did C64 and PCs have special chips/functions that helped them to do rapid
  1951. : >full-screen scrolling?  I would like to try to do rapid full-screen 
  1952. : No; the PC instead has an "inferior" video mode with large pixels
  1953. : which makes the amount of data to move smaller.
  1954.  
  1955. "Inferior" video modes are quite useful when you want to sacrifice
  1956. resolution for speed. Is the Mac really not capable of using video modes
  1957. with a resolution less than 512x384?
  1958.  
  1959. --
  1960.  
  1961.      // Lars Gaarden. Student at Trondheim College of Engineering.
  1962.  \\ //  email: larsg@edb.tih.no  IRC: Lynet
  1963.   \X/   "But I will rise and I will return like a phoenix from the flame."
  1964.          - Siniad O'Conner
  1965.  
  1966.  
  1967. +++++++++++++++++++++++++++
  1968.  
  1969. >From julian@cs.aukuni.ac.nz (Julian Ross  Harris)
  1970. Date: 14 Jun 1994 23:37:59 GMT
  1971. Organization: University of Auckland
  1972.  
  1973. ingemar@lysator.liu.se (Ingemar Ragnemalm) writes:
  1974.  
  1975. >The options you have are:
  1976.  
  1977. >- Make it possible to step down to fewer bits per pixel. Running in 16
  1978. >colors instead of 256 means twice the speed. Actually, it is possible to
  1979. >make decent scrolling in 16 colors in a 512*340 area on a slow LC. In
  1980. >b/w, it's 8 times faster!
  1981.  
  1982. >- Run in a rather small area. This is what Bolo does.
  1983.  
  1984. Yes, I know it's hardly relevant these days, but i wrote this game on the 
  1985. Mac Plus that used offscreen bitmaps and fullscreen scrolling. The trick
  1986. was to scroll in 32 pixel increments (Ultima-type game). Then full screen
  1987. scrolling was instantaneous. Trouble is, 8 bit is 8x slower, and smooth means
  1988. minimum of 2 pixels at a time, which is a whole lot harder without hardware
  1989. assistance.
  1990.  
  1991. --
  1992. Julian, Programmer, Comp. Sci, Univ. Auckland, julian@cs.auckland.ac.nz
  1993.  
  1994. +++++++++++++++++++++++++++
  1995.  
  1996. >From dwareing@apanix.apana.org.au (David Wareing)
  1997. Date: 14 Jun 94 15:21:50 GMT
  1998. Organization: Apanix Public Access Unix, +61 8 373 5485 (5 lines)
  1999.  
  2000. seanmcd@ac.dal.ca writes:
  2001.  
  2002. >In article <CrB7Aw.6E3@world.std.com>, ivanski@world.std.com (Ivan M CaveroBelaunde) writes:
  2003. >> 
  2004. >> I'd explore instead the trick the MacPlay people mentioned at the WWDC
  2005. >> that is used in AstroChase 3D: interlaced animation, which allows you
  2006. >> to blast every other line in a given animation frame, cutting your
  2007. >> blitting bandwith needs by half...
  2008. >> 
  2009. >I think Chuck Yeager's Air Combat does this too. You can see interlacing
  2010. >in the terrain if you rock the plane back and forth.
  2011.  
  2012. And of course there's always Deliverance. That demo still surprises me
  2013. every time I check it out. Just not used to scrolling graphics on the mac
  2014. I guess.
  2015.  
  2016. --
  2017. David Wareing
  2018. Adelaide, South Australia         dwareing@apanix.apana.org.au
  2019. - ------------------------------------------------------------
  2020. Overflight Software - Macintosh Games & Multimedia Programming
  2021.  
  2022. +++++++++++++++++++++++++++
  2023.  
  2024. >From Malicious_Monarch@nile.com (Malicious Monarch)
  2025. Date: Tue, 14 Jun 94 14:54:56 MDT
  2026. Organization: The Nile BBS
  2027.  
  2028. <<"Inferior" video modes are quite useful when you want to sacrifice resolution
  2029. for speed.>>
  2030.  
  2031.   That's true, but I don't know many people who would like to take a game with
  2032. pixelated graphics over one that has very precise -shall I say 'crisp'? :) -
  2033. graphics.  There's always more than one way to make a game...
  2034.  
  2035.  
  2036. -Eric A. Drumbor-
  2037.  
  2038.      Opinions posted are of the user, not the administration.
  2039.  
  2040. +++++++++++++++++++++++++++
  2041.  
  2042. >From Malicious_Monarch@nile.com (Malicious Monarch)
  2043. Date: Tue, 14 Jun 94 14:58:44 MDT
  2044. Organization: The Nile BBS
  2045.  
  2046. <<If not, you are all destined to fester in the mouldy crevis of a mac games
  2047. industry that has about as much chance of producing a decent game, as a  cheese
  2048. sandwich has of sneaking its way past the doorman at the Hilton.>>
  2049.  
  2050.    Haha ;)  Nice.  But since when does a minor limitation make a computer
  2051. completely inferior for decent games?  Come come, let's be a little more
  2052. optimistic...
  2053.  
  2054.  
  2055. -Eric A. Drumbor-
  2056.  
  2057.      Opinions posted are of the user, not the administration.
  2058.  
  2059. +++++++++++++++++++++++++++
  2060.  
  2061. >From d88-jwa@mumrik.nada.kth.se (Jon Wdtte)
  2062. Date: 15 Jun 1994 11:51:39 GMT
  2063. Organization: The Royal Institute of Technology
  2064.  
  2065. In <2tkmlv$602@beta.qmw.ac.uk> enry@dcs.qmw.ac.uk (Henry) writes:
  2066.  
  2067. >Why can I not change the video hardware's screen base pointer, and fill in the
  2068. >newly exposed part of the screen. This eliminates as much bit copying as we
  2069. >like (give enough vram set asside)...
  2070.  
  2071. 1) because then you'd have locked yourself into a specific screen
  2072. hardware setup. A MacPlus is different from a Toby Framebuffer is
  2073. different from a THinder/24 is different from a 8100/AV.
  2074.  
  2075. >Is it possible to reliably direct the macs hardware to a different
  2076. >screen buffer?
  2077.  
  2078. Only if you want to special-case for dozens of video cards.
  2079. Not to mention that half of them don't have enough extra RAM
  2080. to put any extra pixels in.
  2081.  
  2082. >If not, you are all destined to fester in the mouldy crevis of a mac games
  2083. >industry that has about as much chance of producing a decent game, as a 
  2084. >cheese sandwich has of sneaking its way past the doorman at the Hilton.
  2085.  
  2086. Well, the PowerPC does some pretty decent frame rates.
  2087. And I think Prince of Persia was a decent game, and SimCity 2000
  2088. still is.
  2089.  
  2090. Cheers,
  2091.  
  2092.                 / h+
  2093. -- 
  2094.  -- Jon W{tte, h+@nada.kth.se, Mac Software Engineer Deluxe --
  2095.  
  2096.   "Practice random kindness, and senseless acts of beauty."
  2097.  
  2098. +++++++++++++++++++++++++++
  2099.  
  2100. >From d88-jwa@mumrik.nada.kth.se (Jon Wdtte)
  2101. Date: 15 Jun 1994 11:53:11 GMT
  2102. Organization: The Royal Institute of Technology
  2103.  
  2104. In <2tkrd2$nk3@astfgl.edb.tih.no> larsg@edb.tih.no (Lars Garden) writes:
  2105.  
  2106. >"Inferior" video modes are quite useful when you want to sacrifice
  2107. >resolution for speed. Is the Mac really not capable of using video modes
  2108. >with a resolution less than 512x384?
  2109.  
  2110. Worse.
  2111.  
  2112. Most screen cards stop at 640x480; the 512x384 mode is only for the
  2113. Mac LC 12" color monitor and the Color Classic 10" built-in color,
  2114. none of which sold well.
  2115.  
  2116. A Mac has square pixels at 72 dpi, and that's it!
  2117.  
  2118. Cheers,
  2119.  
  2120.                     / h+
  2121. -- 
  2122.  -- Jon W{tte, h+@nada.kth.se, Mac Software Engineer Deluxe --
  2123.  
  2124.   "Practice random kindness, and senseless acts of beauty."
  2125.  
  2126. +++++++++++++++++++++++++++
  2127.  
  2128. >From mikec@mv.mv.com (Mike Callaghan)
  2129. Date: Wed, 15 Jun 1994 12:32:19 GMT
  2130. Organization: MV Communications, Inc.
  2131.  
  2132. In article <2t5bff$fnp@news.bu.edu>, y-tony@bu.edu (Yan Lee) writes:
  2133. >       I have been reading a bit about animation and the Mac.  I have
  2134. >read that full screen scrolling is almost impossible to do well on the
  2135. >Mac.  I do understand that game machines have chips that specialize in
  2136. >such activities.  Howver, is it still not possible for the Mac to do it?
  2137.  
  2138. What about programs like Stepping Out? It did great full-screen scrolling
  2139. relatively quickly even on a Mac Plus. I realize that doing this in a 
  2140. window is a completely different story, but how did Stepping Out accomplish
  2141. it? Is it possible to set up a giant bitmap (or pixmap) and simply alter
  2142. the address where the Mac thinks its screen is? 
  2143.  
  2144. MikeC
  2145. -- 
  2146. Michael D. Callaghan                             Nashua, New Hampshire
  2147. - --------------------------------------------------------------------
  2148. RULE: "(sqrt(-1)) before (2.71828), except after (186,000 miles/sec)."
  2149.             [THE DANGERS OF MIXING GRAMMAR AND SCIENCE]
  2150.  
  2151. +++++++++++++++++++++++++++
  2152.  
  2153. >From ivanski@world.std.com (Ivan M CaveroBelaunde)
  2154. Date: Wed, 15 Jun 1994 15:42:51 GMT
  2155. Organization: The World Public Access UNIX, Brookline, MA
  2156.  
  2157. Malicious_Monarch@nile.com (Malicious Monarch) writes:
  2158. ><<"Inferior" video modes are quite useful when you want to sacrifice resolution
  2159. >for speed.>>
  2160. >  That's true, but I don't know many people who would like to take a game with
  2161. >pixelated graphics over one that has very precise -shall I say 'crisp'? :) -
  2162. >graphics.  There's always more than one way to make a game...
  2163.  
  2164. I would. In a second. While it might be feasible to do a full-screen
  2165. textured map game a la DOOM/PID with good performance on a PowerMac,
  2166. it's not on a 25MHz 030 at 640x480. The higher performance machines you
  2167. require in order to deliver acceptable playability, the more you shrink
  2168. your potential market and the harder it is to justify the effort of
  2169. developing a game like that.
  2170.  
  2171. Sometimes crispness is more important than fps, and viceversa (there
  2172. are different tradeoffs with different performance levels, different
  2173. kind of games, etc). The sole *availability* of an "inferior" video mode
  2174. would allow the game designer the choice of sacrificing one for the other -
  2175. a choice we don't have right now.
  2176.  
  2177. -Ivan
  2178. - -
  2179. Ivan Cavero Belaunde (ivanski@world.std.com)
  2180. Avid VideoShop Project Lead
  2181. Avid Technology, Inc.
  2182.  
  2183. +++++++++++++++++++++++++++
  2184.  
  2185. >From Dave Falkenburg <falken@apple.com>
  2186. Date: Wed, 15 Jun 1994 16:11:31 GMT
  2187. Organization: Apple Computer, Inc.
  2188.  
  2189. In article <2tmq0b$t70@news.kth.se> Jon W!tte, d88-jwa@mumrik.nada.kth.se
  2190. writes:
  2191. >>In <2tkmlv$602@beta.qmw.ac.uk> enry@dcs.qmw.ac.uk (Henry) writes:
  2192. >>If not, you are all destined to fester in the mouldy crevis of a mac
  2193. games
  2194. >>industry that has about as much chance of producing a decent game, as a 
  2195. >>cheese sandwich has of sneaking its way past the doorman at the Hilton.
  2196.  
  2197. Hmm.  I ordered a grilled cheese sandwich from room service once.
  2198.  
  2199. ... but seriously
  2200.  
  2201. In many cases you simply cannot change the video base address because of
  2202. limitations and/or differences in the video hardware.
  2203.  
  2204. However, there is absolutely nothing wrong with slamming bits into the
  2205. frame buffer directly.
  2206.  
  2207.  
  2208. -Dave Falkenburg
  2209. -Apple Computer, Inc.
  2210.  
  2211. +++++++++++++++++++++++++++
  2212.  
  2213. >From mxmora@unix.sri.com (Matt Mora)
  2214. Date: 15 Jun 94 16:55:18 GMT
  2215. Organization: SRI International, Menlo Park, CA
  2216.  
  2217. In article <CrFutw.Bx0@mv.mv.com> mikec@mv.mv.com (Mike Callaghan) writes:
  2218.  
  2219. >What about programs like Stepping Out? It did great full-screen scrolling
  2220. >relatively quickly even on a Mac Plus. I realize that doing this in a 
  2221. >window is a completely different story, but how did Stepping Out accomplish
  2222. >it? Is it possible to set up a giant bitmap (or pixmap) and simply alter
  2223. >the address where the Mac thinks its screen is? 
  2224.  
  2225.  
  2226. Stepping out only had 22k of data to blit to worry about. Color Macs
  2227. have about 300k of data to blit. Big difference.
  2228.  
  2229.  
  2230. Xavier
  2231.  
  2232.  
  2233. -- 
  2234. ___________________________________________________________
  2235. Matthew Xavier Mora                       Matt_Mora@sri.com
  2236. SRI International                       mxmora@unix.sri.com
  2237. 333 Ravenswood Ave                    Menlo Park, CA. 94025
  2238.  
  2239. +++++++++++++++++++++++++++
  2240.  
  2241. >From mkelly@cs.uoregon.edu (Michael A. Kelly)
  2242. Date: 15 Jun 1994 10:42:31 -0700
  2243. Organization: High Risk Ventures
  2244.  
  2245. In article <2tmq0b$t70@news.kth.se>,
  2246. Jon Wdtte <d88-jwa@mumrik.nada.kth.se> wrote:
  2247. >
  2248. >>Is it possible to reliably direct the macs hardware to a different
  2249. >>screen buffer?
  2250. >
  2251. >Only if you want to special-case for dozens of video cards.
  2252.  
  2253. What?  I was under the impression that it can't be done in any case (except
  2254. for some of the classic Macs of course) because the pointer to the video
  2255. buffer is in hardware.  So you're saying it's possible to do page-flipping
  2256. on a Mac?  How do you swap the pointer?  It sounds like you're also saying
  2257. that the second page has to be in video memory, right?
  2258.  
  2259. >>If not, you are all destined to fester in the mouldy crevis of a mac games
  2260. >>industry that has about as much chance of producing a decent game, as a 
  2261. >>cheese sandwich has of sneaking its way past the doorman at the Hilton.
  2262. >
  2263. >Well, the PowerPC does some pretty decent frame rates.
  2264. >And I think Prince of Persia was a decent game, and SimCity 2000
  2265. >still is.
  2266.  
  2267. Not to mention Space Madness and Cyclone. ;-)  But it's true, if we didn't
  2268. have to go to such great lengths to produce flicker-free animation on the
  2269. Mac, we could have some pretty hot games that just aren't feasible now.
  2270. We might even be able to scroll full screen at a decent frame rate, and still
  2271. have time for all the other game computations.
  2272.  
  2273. Mike.
  2274. -- 
  2275. _____________________________________________________________________________
  2276. Michael A. Kelly                                                President/CEO
  2277. mkelly@cs.uoregon.edu                                      High Risk Ventures
  2278. _____________________________________________________________________________
  2279.  
  2280. +++++++++++++++++++++++++++
  2281.  
  2282. >From mkelly@cs.uoregon.edu (Michael A. Kelly)
  2283. Date: 15 Jun 1994 10:54:21 -0700
  2284. Organization: High Risk Ventures
  2285.  
  2286. In article <CrG3nF.EwL@world.std.com>,
  2287. Ivan M CaveroBelaunde <ivanski@world.std.com> wrote:
  2288. >><<"Inferior" video modes are quite useful when you want to sacrifice resolution
  2289. >>for speed.>>
  2290.  
  2291. >kind of games, etc). The sole *availability* of an "inferior" video mode
  2292. >would allow the game designer the choice of sacrificing one for the other -
  2293. >a choice we don't have right now.
  2294.  
  2295. But we can still pretend we do.  As was mentioned previously in this thread,
  2296. we can gain considerable speed by keeping the game at 320x240 offscreen and
  2297. blowing it up (or not) to 640x480 on screen.  I've played around with this,
  2298. and there *is* a significant speedup.  You're doing 1/4 the work offscreen,
  2299. and maybe around 3/4 the work onscreen.  With the right application (and
  2300. prehaps a combination of high- and low-resolution graphics on screen) this
  2301. technique can be acceptable to even the typical 'snotty' Mac user (of which
  2302. I am one!) who dry heaves at the thought of 320x240 games.  Deliverance is
  2303. probably a pretty good example of how and when to use this technique, and
  2304. how to present it (they give the user the option to play in a 320x240
  2305. window at high resolution or in a 640x480 window at low resolution).
  2306.  
  2307. Mike.
  2308. -- 
  2309. _____________________________________________________________________________
  2310. Michael A. Kelly                                                President/CEO
  2311. mkelly@cs.uoregon.edu                                      High Risk Ventures
  2312. _____________________________________________________________________________
  2313.  
  2314. +++++++++++++++++++++++++++
  2315.  
  2316. >From mkelly@cs.uoregon.edu (Michael A. Kelly)
  2317. Date: 15 Jun 1994 11:10:23 -0700
  2318. Organization: High Risk Ventures
  2319.  
  2320. In article <2tnei7$t1u@majestix.cs.uoregon.edu>,
  2321. Michael A. Kelly <mkelly@cs.uoregon.edu> wrote:
  2322. >In article <2tmq0b$t70@news.kth.se>,
  2323. >Jon Wdtte <d88-jwa@mumrik.nada.kth.se> wrote:
  2324. >>
  2325. >>Well, the PowerPC does some pretty decent frame rates.
  2326. >>And I think Prince of Persia was a decent game, and SimCity 2000
  2327. >>still is.
  2328. >
  2329. >Not to mention Space Madness and Cyclone. ;-)
  2330.  
  2331. BTW, Space Madness and Cyclone both run flicker-free at 60 fps on '040 Macs,
  2332. at 8-bit 640x480 resolution.  And, like most action games on the Mac, they
  2333. easily run at 30 fps on lesser machines.  Prince of Persia tended to slow
  2334. down quite noticeably on my IIcx when there was a slicer on the screen, but
  2335. I suspect it was using Quickdraw.  It should be easy to achieve at least
  2336. 30 fps on slow machines with a game like PoP, which has a textured background,
  2337. but few objects with relatively little movement, if you draw direct to screen.
  2338.  
  2339. Of course, a scrolling background is quite a different story...
  2340.  
  2341. Mike.
  2342. -- 
  2343. _____________________________________________________________________________
  2344. Michael A. Kelly                                                President/CEO
  2345. mkelly@cs.uoregon.edu                                      High Risk Ventures
  2346. _____________________________________________________________________________
  2347.  
  2348. +++++++++++++++++++++++++++
  2349.  
  2350. >From d88-jwa@dront.nada.kth.se (Jon Wdtte)
  2351. Date: 15 Jun 1994 16:49:30 GMT
  2352. Organization: The Royal Institute of Technology
  2353.  
  2354. In <CrFutw.Bx0@mv.mv.com> mikec@mv.mv.com (Mike Callaghan) writes:
  2355.  
  2356. >What about programs like Stepping Out? It did great full-screen scrolling
  2357. >relatively quickly even on a Mac Plus. I realize that doing this in a 
  2358.  
  2359. Ah, but that was in black-and-white. Everyone can scroll a screen
  2360. in black-and-white.
  2361.  
  2362. >window is a completely different story, but how did Stepping Out accomplish
  2363.  
  2364. No, it's no harder scrolling in a window that scrolling a screen.
  2365.  
  2366. >it? Is it possible to set up a giant bitmap (or pixmap) and simply alter
  2367. >the address where the Mac thinks its screen is? 
  2368.  
  2369. For the MacPlus, you can do something close to that, but with limitations.
  2370. For some video cards, in some modes, you can do it as well. However, it's
  2371. not something that all video cards/drivers support, and most cards don't
  2372. have enought memory for it.
  2373. -- 
  2374.  -- Jon W{tte, h+@nada.kth.se, Mac Software Engineer Deluxe --
  2375.  
  2376.  "My boss made me say it. He dares you to sue!"
  2377.  
  2378. +++++++++++++++++++++++++++
  2379.  
  2380. >From sly@fly2.berkeley.edu (Cyrus Harmon)
  2381. Date: Wed, 15 Jun 1994 11:51:11 -0700
  2382. Organization: UC Berkeley
  2383.  
  2384. In article <2tmq37$t75@news.kth.se>, d88-jwa@mumrik.nada.kth.se (Jon Wtte)
  2385. wrote:
  2386.  
  2387. > Most screen cards stop at 640x480; the 512x384 mode is only for the
  2388. > Mac LC 12" color monitor and the Color Classic 10" built-in color,
  2389. > none of which sold well.
  2390. > A Mac has square pixels at 72 dpi, and that's it!
  2391.  
  2392. Except with the multiple scan monitors that let you select video
  2393. modes. I guess for the first time Apple is now offering "inferior"
  2394. video modes :->.  
  2395.  
  2396. Cyrus Harmon
  2397. sly@fly2.berkeley.edu
  2398.  
  2399. +++++++++++++++++++++++++++
  2400.  
  2401. >From larsg@edb.tih.no (Lars Garden)
  2402. Date: 16 Jun 1994 13:33:13 GMT
  2403. Organization: Trondheim College of Engineering
  2404.  
  2405. Malicious Monarch (Malicious_Monarch@nile.com) wrote:
  2406. : <<"Inferior" video modes are quite useful when you want to sacrifice resolution
  2407. : for speed.>>
  2408. :   That's true, but I don't know many people who would like to take a game with
  2409. : pixelated graphics over one that has very precise -shall I say 'crisp'? :) -
  2410. : graphics.  There's always more than one way to make a game...
  2411.  
  2412. I know a lot of people that would prefer a 320*200 20fps DOOM over a
  2413. 640x480 4fps DOOM. 
  2414.  
  2415. --
  2416.  
  2417.      // Lars Gaarden. Student at Trondheim College of Engineering.
  2418.  \\ //  email: larsg@edb.tih.no  IRC: Lynet
  2419.   \X/   "But I will rise and I will return like a phoenix from the flame."
  2420.          - Siniad O'Conner
  2421.  
  2422.  
  2423. +++++++++++++++++++++++++++
  2424.  
  2425. >From 103t_english@west.cscwc.pima.edu
  2426. Date: 14 Jun 94 14:22:46 MST
  2427. Organization: (none)
  2428.  
  2429. In article <2tkmlv$602@beta.qmw.ac.uk>, enry@dcs.qmw.ac.uk (Henry) writes:
  2430. > Shuffling bytes about in memory just puts a huge burden on the processor
  2431. > when it should be calculating something far less menial.
  2432. > Why can I not change the video hardware's screen base pointer, and fill in the
  2433. > newly exposed part of the screen. This eliminates as much bit copying as we
  2434. > like (give enough vram set asside)...
  2435. > It also has the added advantage of having an offscreen pixmap, and being
  2436. > able to display it instantly without blasting bytes through the proccessor,
  2437. > allowing sencible (fast) screen buffering.
  2438. > Is it possible to reliably direct the macs hardware to a different
  2439. > screen buffer?
  2440. > (You can do it on a Mac512k :-)
  2441. > If not, can I do it unreliably?
  2442. > If not, you are all destined to fester in the mouldy crevis of a mac games
  2443. > industry that has about as much chance of producing a decent game, as a 
  2444. > cheese sandwich has of sneaking its way past the doorman at the Hilton.
  2445.  
  2446. And of course, Apple didn't provide any standard, or at least, *documented*,
  2447.  way to do it on the PowerMacs because we all know how worried they are about 
  2448. the games industry...
  2449.  
  2450. And telling me to go look in the book on creating hardware add-on cards for
  2451. information about the potential for page-flipping in a Mac video card is
  2452. hardly contributing to the upliftment of Apple games-writing, although it could
  2453. be seen as a way of telling potential games-writers on the Mac to bugger-off 
  2454. -we don't want you here...
  2455.  
  2456.  
  2457. Lawson
  2458.  
  2459. +++++++++++++++++++++++++++
  2460.  
  2461. >From amanda@intercon.com (Amanda Walker)
  2462. Date: Thu, 16 Jun 1994 19:42:43 -0500
  2463. Organization: InterCon Systems Corporation, Herndon, VA  USA
  2464.  
  2465. larsg@edb.tih.no (Lars Garden) writes:
  2466. > I know a lot of people that would prefer a 320*200 20fps DOOM over 
  2467. > a 640x480 4fps DOOM. 
  2468.  
  2469. Would anyone like a 640x480 15-20fps DOOM in greyscale ... but anti-aliased?
  2470.  
  2471. This is actually a serious question.
  2472.  
  2473.  
  2474. Amanda Walker
  2475. InterCon Systems Corporation
  2476.  
  2477.  
  2478.  
  2479. +++++++++++++++++++++++++++
  2480.  
  2481. >From shirleyd@cognos.COM (Dieter Shirley)
  2482. Date: Thu, 16 Jun 1994 19:49:57 GMT
  2483. Organization: Cognos Incorporated, Ottawa CANADA
  2484.  
  2485. Michael A. Kelly (mkelly@cs.uoregon.edu) wrote:
  2486. : In article <2tmq0b$t70@news.kth.se>,
  2487. : Jon Wdtte <d88-jwa@mumrik.nada.kth.se> wrote:
  2488. : >
  2489. : >>Is it possible to reliably direct the macs hardware to a different
  2490. : >>screen buffer?
  2491. : >
  2492. : >Only if you want to special-case for dozens of video cards.
  2493.  
  2494. : What?  I was under the impression that it can't be done in any case (except
  2495. : for some of the classic Macs of course) because the pointer to the video
  2496. : buffer is in hardware.  So you're saying it's possible to do page-flipping
  2497. : on a Mac?  How do you swap the pointer?  It sounds like you're also saying
  2498. : that the second page has to be in video memory, right?
  2499.  
  2500. Yeah, there is a call, documented in the legendary IM: Cards and Drivers
  2501. that video card developers can support which allows page flipping.  Of
  2502. course, all of the card developers do it a little bit differently.  (Not
  2503. the page flipping, but drawing to the different pages.) Add to this that
  2504. most (if not all) internal video Macs don't support this and not all
  2505. video cards do, and you've got to write normal code for those cases anyways.
  2506.  
  2507. But, it can and has been done.  Try playing OIDS on a slower machine, like
  2508. a IIci or IIcx with a Toby 8-bit card, then install MaxAppleZoom, which
  2509. uses the extra VRAM for it's own purposes and see what OIDS looks like
  2510. *without* the page flipping.  Very hideous.
  2511.  
  2512. Later,
  2513. -dete
  2514.  
  2515. +++++++++++++++++++++++++++
  2516.  
  2517. >From y-tony@bu.edu (Yan Lee)
  2518. Date: 17 Jun 1994 02:11:39 GMT
  2519. Organization: Boston University
  2520.  
  2521. Amanda Walker (amanda@intercon.com) wrote:
  2522. : larsg@edb.tih.no (Lars Garden) writes:
  2523. : > I know a lot of people that would prefer a 320*200 20fps DOOM over 
  2524. : > a 640x480 4fps DOOM. 
  2525.  
  2526. : Would anyone like a 640x480 15-20fps DOOM in greyscale ... but anti-aliased?
  2527.  
  2528. : This is actually a serious question.
  2529.  
  2530. Would grayscale actually make a difference in speed?  It is still 
  2531. following 8-bits of color/shades.  
  2532.  
  2533. : Amanda Walker
  2534. : InterCon Systems Corporation
  2535.  
  2536.  
  2537. P.S.  Thanks for the enormous responses about scrolling.  I never expected 
  2538. so much input!
  2539.  
  2540. Tony
  2541.  
  2542.  
  2543. +++++++++++++++++++++++++++
  2544.  
  2545. >From chris-b@cs.auckland.ac.nz (Chris Burns)
  2546. Date: Fri, 17 Jun 1994 18:22:36 +1200
  2547. Organization: HyperMedia Unit, Auckland University
  2548.  
  2549. In article <2tnbpm$f24@unix.sri.com>, mxmora@unix.sri.com (Matt Mora)
  2550. wrote:
  2551.  
  2552. > In article <CrFutw.Bx0@mv.mv.com> mikec@mv.mv.com (Mike Callaghan) writes:
  2553. > >What about programs like Stepping Out? It did great full-screen scrolling
  2554. > >relatively quickly even on a Mac Plus. I realize that doing this in a 
  2555. > >window is a completely different story, but how did Stepping Out accomplish
  2556. > >it? Is it possible to set up a giant bitmap (or pixmap) and simply alter
  2557. > >the address where the Mac thinks its screen is? 
  2558. > Stepping out only had 22k of data to blit to worry about. Color Macs
  2559. > have about 300k of data to blit. Big difference.
  2560.  
  2561. Is it possible to use the MMU to scroll without blitting? This may only
  2562. work with RBV (and even then I think I remember something about the 
  2563. hardware getting frame buffer data from physical address $00000000).
  2564.  
  2565. Chris B
  2566. - ---------------------------------------------------------------------
  2567. NewZealand:AucklandUniversity:ComputerScience:HyperMediaUnit:ChrisBurns
  2568. Internet: chris-b@cs.auckland.ac.nz
  2569. Phone:    +64 9 373-7599 x6194
  2570. Fax:      +64 9 373-7453
  2571. - ---------------------------------------------------------------------
  2572.  
  2573. +++++++++++++++++++++++++++
  2574.  
  2575. >From byrne1@husc8.harvard.edu (Laurence Byrne)
  2576. Date: 17 Jun 94 14:17:16 GMT
  2577. Organization: Harvard University, Cambridge, Massachusetts
  2578.  
  2579. y-tony@bu.edu (Yan Lee) writes:
  2580.  
  2581. >Amanda Walker (amanda@intercon.com) wrote:
  2582. >: larsg@edb.tih.no (Lars Garden) writes:
  2583. >: > I know a lot of people that would prefer a 320*200 20fps DOOM over 
  2584. >: > a 640x480 4fps DOOM. 
  2585. >: Would anyone like a 640x480 15-20fps DOOM in greyscale ... but anti-aliased?
  2586. >: This is actually a serious question.
  2587.  
  2588. >Would grayscale actually make a difference in speed?  It is still 
  2589. >following 8-bits of color/shades.  
  2590.  
  2591. I would imagine that the purpose of going to grayscale is not to directly
  2592. speed up the graphics - as you point out, it's still 8 bits - but instead
  2593. to make the anti-aliasing more effective/less noticeable. (The human eye
  2594. having a limit to its ability to resolve shades of gray.) Personally, to
  2595. get back to the original question, I think I'd find that a gray Doom
  2596. lost about 30% of its entertainment value - it'd probably be almost as
  2597. much fun to play, but there's still a world of difference between colour and
  2598. b/w....
  2599.  
  2600. -- 
  2601. - -----------------------------------------------------------------------------
  2602. Laurence Byrne             un chien andalusia        byrne1@husc.harvard.edu
  2603. Hist/CS                       *finger @byrne1.student.harvard.edu for PGP pubkey*
  2604.  
  2605. A zygote is a gamete's way of producing more gametes.
  2606. This may be the purpose of the universe.        - Lazarus Long
  2607.  
  2608. +++++++++++++++++++++++++++
  2609.  
  2610. >From d88-jwa@mumrik.nada.kth.se (Jon Wdtte)
  2611. Date: 17 Jun 1994 20:30:07 GMT
  2612. Organization: The Royal Institute of Technology
  2613.  
  2614. In <2tnei7$t1u@majestix.cs.uoregon.edu> mkelly@cs.uoregon.edu (Michael A. Kelly) writes:
  2615.  
  2616. >buffer is in hardware.  So you're saying it's possible to do page-flipping
  2617. >on a Mac?  How do you swap the pointer?  It sounds like you're also saying
  2618. >that the second page has to be in video memory, right?
  2619.  
  2620. Yes. There are DOCUMENTED video driver calls to do that, but not all
  2621. video cards support them, and almost no video cards have enough memory
  2622. to make the feature useful.
  2623.  
  2624. >We might even be able to scroll full screen at a decent frame rate, and still
  2625. >have time for all the other game computations.
  2626.  
  2627. When scrolling is a big matter, those "other game computations" usually
  2628. shring to insignificance (on the order of one line of scrolling pixels...)
  2629.  
  2630. Anyway, locking yourself to a specific blitter is OK for machines with
  2631. a short usable life span, but for anything that's supposed to improve
  2632. and stay compatible, it's not really a good idea.
  2633.  
  2634. However, Apple COULD HAVE put a blitter in the lower-power models and
  2635. had it accellerate CopyBits. I guess another $50-100 in the retail channel
  2636. wasn't deemed worth it.
  2637.  
  2638. Cheers,
  2639.  
  2640.                     / h+
  2641. -- 
  2642.  -- Jon W{tte, h+@nada.kth.se, Mac Software Engineer Deluxe --
  2643.  
  2644.  "My boss made me say it. He dares you to sue!"
  2645.  
  2646. +++++++++++++++++++++++++++
  2647.  
  2648. >From d88-jwa@mumrik.nada.kth.se (Jon Wdtte)
  2649. Date: 17 Jun 1994 20:34:55 GMT
  2650. Organization: The Royal Institute of Technology
  2651.  
  2652. In <byrne1.771862636@husc8.harvard.edu> byrne1@husc8.harvard.edu (Laurence Byrne) writes:
  2653.  
  2654. >I would imagine that the purpose of going to grayscale is not to directly
  2655. >speed up the graphics - as you point out, it's still 8 bits - but instead
  2656. >to make the anti-aliasing more effective/less noticeable. (The human eye
  2657. >having a limit to its ability to resolve shades of gray.) Personally, to
  2658.  
  2659. Actually, I think black/white means 4-bit mode, in which you can do
  2660. page flippin on many vide cards, and palette flipping on the others.
  2661. -- 
  2662.  -- Jon W{tte, h+@nada.kth.se, Mac Software Engineer Deluxe --
  2663.  
  2664.  "My boss made me say it. He dares you to sue!"
  2665.  
  2666. +++++++++++++++++++++++++++
  2667.  
  2668. >From lewistot@netcom.com (John Lewis)
  2669. Date: Sat, 18 Jun 1994 07:04:43 GMT
  2670. Organization: NETCOM On-line Communication Services (408 261-4700 guest)
  2671.  
  2672. 103t_english@west.cscwc.pima.edu wrote:
  2673. : And of course, Apple didn't provide any standard, or at least, *documented*,
  2674. : way to do it on the PowerMacs because we all know how worried they are about 
  2675. : the games industry...
  2676.  
  2677. Actually, Apple is very concerned about the game industry. At Maxis (the
  2678. SimCity people), we receive pre-release documentation and beta software almost
  2679. weekly. Our experience is not unique either. At a recent PowerMac hands-on
  2680. development seminar I went to, one third of the companies invited were game
  2681. companies.
  2682.  
  2683. Using some "dirty rectangle" techniques, I can acheive some fairly decent fps
  2684. rates on slower Macs and some damn spectacular fps rates on PowerMacs.
  2685.  
  2686. : And telling me to go look in the book on creating hardware add-on cards for
  2687. : information about the potential for page-flipping in a Mac video card is
  2688. : hardly contributing to the upliftment of Apple games-writing, although it could
  2689. : be seen as a way of telling potential games-writers on the Mac to bugger-off 
  2690. : -we don't want you here...
  2691.  
  2692. You might try going back to the books to investigate other means of doing
  2693. fast scrolling other than page flipping. With a little care, Copybits can
  2694. do some amazing things. Also, try actually finding out what people in the
  2695. game industry think of Apple BEFORE you go flaming them.
  2696. -- 
  2697. - -------------------------------------------------------------------------
  2698. John "I'ld rather be skydiving" Lewis|#include "standard .sig BS" |Witty  |
  2699. lewistotle@netcom.com <- prefered    |Blue Skies to all skydivers.|text   |
  2700. jlewis@maxis.com      <- work        |USPA 87419, C-22826         |picture|
  2701. lewistotle@aol.com    <- rarely      |<Fnord>                     |comming|
  2702.  
  2703. +++++++++++++++++++++++++++
  2704.  
  2705. >From alex@metcalf.demon.co.uk (Alex Metcalf)
  2706. Date: Sat, 18 Jun 1994 11:20:49 GMT
  2707. Organization: Best Before Yesterday
  2708.  
  2709. In article <1994Jun13.103349.1@csc.canterbury.ac.nz>,
  2710. misc173@csc.canterbury.ac.nz wrote:
  2711.  
  2712. > > I missed the original post, but if it's about full screen scrolling at
  2713. > > 30fps, that's still pretty much impossible. There are several solutions
  2714. > > people have used, such as the draw-every-other-line approach in Deliverance
  2715. > > to improve speed on slower Macs. Also, QuickTime 2 does it, though that
  2716. > > doesn't count (I think it doesn't really redraw all the screen all the
  2717. > > time).
  2718. > > 
  2719. > > Someone sent me a test result from a PowerMac: straight blitting a 640x480
  2720. > > image to the screen and doing nothing else, the frame rate was only about
  2721. > > 25fps. Games would also do lots of drawing offscreen
  2722. >     I couldn't believe this post when I read it yesterday, so I went home
  2723. > and wrote a 640x480x8bit RAM scroller, it starts at 0 and scrolls up through
  2724. > RAM, copying it to the screen, one line per frame. It got 40 fps on my 605, and
  2725. > I know that it could be optimised more, unrolling the inner loop, etc. I tried
  2726. > a variety of resolutions and interpolation techniques and gained some
  2727. > interesting insights. If you reduce the screen size the speed increases
  2728. > proportionaly, 320x240x8bit at 150fps. Using alternate lines doubles the speed
  2729. > again ( and looks fairly good against black ), pixel doubling is very slow, I
  2730. > havent tried using movep yet, but it should speed things up ( if it works ).
  2731. >     This routine uses only move.l, as I intend to program for 040's I will
  2732. > try move16, which should speed things up about 3x.
  2733. >     The final conclusion is that whoever wrote that ppc blitter ain't very
  2734. > good, I know enough assembly to this, and other simple graphics routines, but
  2735. > it still goes reasonably fast ( at least 10% faster than copybits ). Full
  2736. > screen scrolling is possible, and if someone asks for it I'll even post my
  2737. > code.
  2738.  
  2739. I've left all my news to the weekend to answer, so I've finally got round
  2740. to reading it to find I haven't been holding up my side fo the argument.
  2741. :-)
  2742.  
  2743. Full screen scrolling IS impossible for a game, because you don't take into
  2744. account the huge amount of offscreen drawing which is done before the image
  2745. is blitted to the screen. Often only 20 percent or even less of the time is
  2746. for copying to the screen, and the rest is drawing masked objects, new
  2747. areas, etc. to the offscreen worlds.
  2748.  
  2749. But you're right about direct copying: if you wanted to, you can redraw a
  2750. whole screen >30 fps. Bit of a boring game, though. :-)
  2751.  
  2752. Best wishes,
  2753.  
  2754.  
  2755.  
  2756. Alex
  2757.  
  2758. --
  2759. Alex Metcalf, Best Before Yesterday
  2760. Mac programmer in C, C++, HyperTalk, assembler
  2761. Juggler, 3-ball tricks
  2762.  
  2763. Internet:          alex@metcalf.demon.co.uk
  2764. Fax (UK):          (0570) 45636
  2765. Fax (US / Canada): 011 44 570 45636
  2766.  
  2767. +++++++++++++++++++++++++++
  2768.  
  2769. >From amanda@intercon.com (Amanda Walker)
  2770. Date: Mon, 20 Jun 1994 17:06:08 -0500
  2771. Organization: InterCon Systems Corporation, Herndon, VA  USA
  2772.  
  2773. In article <2tr0or$j5a@news.bu.edu>, y-tony@bu.edu (Yan Lee) writes:
  2774. > Would grayscale actually make a difference in speed?  It is 
  2775. > still following 8-bits of color/shades.  
  2776.  
  2777. For anti-aliased texture mapping, 8-bit gray scale takes a lot less memory 
  2778. than 24-bit color, and is somewhat faster...
  2779.  
  2780.  
  2781. Amanda Walker
  2782. InterCon Systems Corporation
  2783.  
  2784.  
  2785.  
  2786. +++++++++++++++++++++++++++
  2787.  
  2788. >From amanda@intercon.com (Amanda Walker)
  2789. Date: Mon, 20 Jun 1994 17:07:14 -0500
  2790. Organization: InterCon Systems Corporation, Herndon, VA  USA
  2791.  
  2792. d88-jwa@mumrik.nada.kth.se (Jon Wtte) writes:
  2793. > Actually, I think black/white means 4-bit mode, in which you can do 
  2794. > page flippin on many vide cards, and palette flipping on the others. 
  2795.  
  2796. Nope, I meant 8-bit gray scale.  This way I don't need 24 bit texture maps, 
  2797. and don't have to reduce it to an 8-bit palette, both of which would increase 
  2798. the possible speed.
  2799.  
  2800.  
  2801. Amanda Walker
  2802. InterCon Systems Corporation
  2803.  
  2804.  
  2805.  
  2806. +++++++++++++++++++++++++++
  2807.  
  2808. >From s3026557@titanic.mpce.mq.edu.au (Duncan Anker)
  2809. Date: 23 Jun 1994 09:33:53 GMT
  2810. Organization: Macquarie University, School of Mathematics, Physics, Computing and Electronics
  2811.  
  2812. Amanda Walker (amanda@intercon.com) wrote:
  2813. : larsg@edb.tih.no (Lars Garden) writes:
  2814. : > I know a lot of people that would prefer a 320*200 20fps DOOM over 
  2815. : > a 640x480 4fps DOOM. 
  2816.  
  2817. : Would anyone like a 640x480 15-20fps DOOM in greyscale ... but anti-aliased?
  2818.  
  2819. : This is actually a serious question.
  2820.  
  2821. Given that the Mac I normally use (apart from those cute powerbooks :-)
  2822. has a greyscale moniter, I hardly think I'd miss the colour.
  2823.  
  2824. So a serious answer to a serious question. Yes, I would like a 640x480 
  2825. 15-20fps DOOM in greyscale. Are you writing one, Amanda?
  2826.  
  2827. --
  2828. s3026557@titanic.mpce.mq.edu.au * Duncan Anker * duncan@newling2-00.une.edu.au
  2829.  
  2830. O.K. Scotty, real funny. Now beam down my clothes!
  2831.  
  2832. ---------------------------
  2833.  
  2834. >From gneufeld@superior.carleton.ca (Grant Neufeld)
  2835. Subject: MacPerl- Redirecting STDIN & STDOUT
  2836. Date: Sat, 25 Jun 1994 17:22:23 GMT
  2837. Organization: Carleton University
  2838.  
  2839. I haven't managed to figure out how to redirect STDIN and STDOUT in
  2840. MacPerl. I have a script that runs as follows in UNIX:
  2841.  
  2842.   myscript <mysourcefile >myoutputfile
  2843.  
  2844. I want to be able to specify at least mysourcefile (I can save the
  2845. contents of the MacPerl console for the output) without having to do
  2846. anything drastic to my source code.
  2847.  
  2848. Any direction (including where to look in the docs/help so I can RTFM)
  2849. would be much appreciated.
  2850.  
  2851. --
  2852. Grant Neufeld - gneufeld@ccs.carleton.ca - Ottawa, Ontario, Canada
  2853. <A HREF="http://arpp1.carleton.ca/Grant/Grant.html">Grant Neufeld</A>
  2854. Apple Research Partnership Program, +1 (613) 788-2600 extenstion 3537
  2855. My views are too extreme to be anyone else's
  2856.  
  2857. +++++++++++++++++++++++++++
  2858.  
  2859. >From grbr@arapaho.ucsc.edu (Terry Gritton)
  2860. Date: Sat, 25 Jun 94 17:48:47 GMT
  2861. Organization: University of California, Santa Cruz
  2862.  
  2863. In Article <CryqxB.GDs@cunews.carleton.ca>, gneufeld@superior.carleton.ca
  2864. (Grant Neufeld) wrote:
  2865. >I haven't managed to figure out how to redirect STDIN and STDOUT in
  2866. >MacPerl. I have a script that runs as follows in UNIX:
  2867. >
  2868. >  myscript <mysourcefile >myoutputfile
  2869. >
  2870. >I want to be able to specify at least mysourcefile ...
  2871.  
  2872. You could just use drag and drop, drag the input file onto the icon of the
  2873. program. Then in the perl program you need to read the first argument.
  2874. Something like
  2875.  
  2876. #!/usr/bin/perl
  2877.  
  2878. # Useage(commandline): Prog file1 
  2879. # Useage(Mac GUI): drop input file on Prog icon
  2880.  
  2881.  
  2882. $file1 = @ARGV[0];
  2883.  
  2884. open(FILE, $file1) || die "Can't open $file: $!\n";
  2885. while (<FILE>) {
  2886.   foreach $i (split) {
  2887.   $file1contents{ $i } = 'file1';
  2888.   }
  2889. }
  2890. close(FILE);
  2891.  
  2892. - ---------------------------------------------------------------- 
  2893.    Terry Gritton
  2894.                           "the reason people so often lie
  2895.     Interests:             is that they lack imagination:
  2896.  glycoproteins as          they don't realize that the truth, too,
  2897.  intercellular             is a matter of invention."
  2898.  interregulatory                           Antonio Machado
  2899.  messages    
  2900.                        
  2901.  
  2902. ---------------------------
  2903.  
  2904. >From peskin@caip.rutgers.edu (Richard L. Peskin)
  2905. Subject: PowerPC floating point issue
  2906. Date: 21 Jun 94 18:20:39 GMT
  2907. Organization: Rutgers Univ.
  2908.  
  2909. Can anyone give me a "simple" explanation for the very poor floating
  2910. point performance of the PowerPC's (native code) when transcendental
  2911. funtions are involved? Is this just a poor library implementation
  2912. problem? Is Apple planning to address this issue anytime soon?
  2913. --dick peskin
  2914. =================================
  2915. R. L. Peskin,  Rutgers Univ. ; <peskin@caip.rutgers.edu>;  908/932-3685
  2916. "Good work is always done in defiance of management."  R. Woodward
  2917.  
  2918. +++++++++++++++++++++++++++
  2919.  
  2920. >From weare@galaxy.ucr.edu (christopher weare)
  2921. Date: 21 Jun 1994 15:04:58 -0700
  2922. Organization: University of California, Riverside
  2923.  
  2924. In article <Jun.21.14.20.38.1994.24577@cesl.rutgers.edu>,
  2925. Richard L. Peskin <peskin@caip.rutgers.edu> wrote:
  2926. >Can anyone give me a "simple" explanation for the very poor floating
  2927. >point performance of the PowerPC's (native code) when transcendental
  2928. >funtions are involved? Is this just a poor library implementation
  2929. >problem? Is Apple planning to address this issue anytime soon?
  2930. >--dick peskin
  2931. >=================================
  2932. >R. L. Peskin,  Rutgers Univ. ; <peskin@caip.rutgers.edu>;  908/932-3685
  2933. >"Good work is always done in defiance of management."  R. Woodward
  2934.  
  2935. The simple reason is that MathLib (the library supplied by apple) is very
  2936. slow.  IBM's equivalent lib is about 10 times faster.  Apple says they 
  2937. "are aware of the problem" and are working on a fix.  If anyone knows when
  2938. that might be I'd love to hear.  Personaly, I think apple should have tried
  2939. to license the IBM lib, but ofcourse, I have no idea what was involoved in the
  2940. creation of MathLib.  I serriously doubt that apple will do as good a job on
  2941. their lib as IBM did, but I hope I am wrong.  Ofcourse i mean FAST when i say 
  2942. good.
  2943.  
  2944. Chris
  2945. weare@galaxy.ucr.edu
  2946.  
  2947.  
  2948.  
  2949. +++++++++++++++++++++++++++
  2950.  
  2951. >From Todd M. Morin <toddm@truevision.com>
  2952. Date: 24 Jun 1994 15:38:55 GMT
  2953. Organization: Truevision Inc., Indianapolis, IN
  2954.  
  2955. I saw the below announcement on Compuserve a couple days ago, and it's
  2956. relevant to this issue.  I haven't contacted him yet, so I don't know what
  2957. his license fees are.
  2958.  
  2959. --ToddM.
  2960.  
  2961. - ------------------------------------------------------------------------
  2962. - ---------------------
  2963. Announcement to anyone using the Math Library provided for Power PC
  2964. Macintoshes!
  2965.  
  2966. After recompiling a piece of scientific code for the PowerPC which spends
  2967. most of its time computing transcendental functions and sqrts and achieving
  2968. very poor performance, I investigated the Apple Math Library for the Power
  2969. PC's.  I found it to be extremely slow, and am not sure why.  However, I
  2970. have since produced a library of my own for computing functions about 4-5
  2971. times faster than the Apple library.
  2972.  
  2973. This library currently implements sin(), cos(), exp(), pow(), sqrt(), log(),
  2974. tan(), atan(), sinh(), cosh(), log1p(), and expm1(), along with low level
  2975. functions ldexp() and frexp().  It does not (presently) do any IEEE-754/NCEG
  2976. (etc) exception handling, but in all cases correctly handles and returns
  2977. NaN's, Inf's and denorms as appropriate.  The accuracy of the functions is
  2978. typically about 1-2 LSB (i.e. about 1-2e-16) for most input values.
  2979.  
  2980. This library is available as an xcoff file (compatible with MPW linking and,
  2981. hence, Symantec C++ and MPW).  It consists of routines of my own design, and
  2982. is therefore assured to not be pirated or to infringe on any copyrights. 
  2983. The routines were compiled on and IBM RS/6000 601-based workstation, using
  2984. the highly optimizing level of the xlc compiler.  They contain no POWER
  2985. instructions, so they should be compatible with 601, 603, 604 & 620 (etc.)
  2986. machines as they become available.
  2987.  
  2988. If you are interested, please contact me about licensing, either for single
  2989. machine licenses, licenses to distribute in compiled code, or licenses to
  2990. distribute in object form to accompany development environments.  Also, if
  2991. you are interested in seeing other functions beyond my 'top ten' list added
  2992. to the library, I would be glad to do so.
  2993.  
  2994. Also, Xenotek has expertise in writing fast numerical algorithms and data
  2995. acquisition/control systems.  If you have need of such custom development,
  2996. please contact us.
  2997.  
  2998. Marcus Mendenhall, Ph.D.,
  2999. Xenotek, Inc.
  3000. (615)297-5756
  3001. or via Compuserve mail (76344,251)
  3002.  
  3003. +++++++++++++++++++++++++++
  3004.  
  3005. >From weare@galaxy.ucr.edu (christopher weare)
  3006. Date: 24 Jun 1994 12:21:18 -0700
  3007. Organization: University of California, Riverside
  3008.  
  3009. [bunch o stuff deleted describing a faster lib replacement for MathLib]
  3010.  
  3011. Some questions for the developer:
  3012.  
  3013. 1) How does your library compare to IBM's math library?  Post on this channel
  3014. sugest that the IBM lib is about 10 times faster than apple's when running the 
  3015. savage (is that the name?) benchmark.  Could you compare your lib to IBM's usingthat benchmark please.
  3016.  
  3017. 2) Are you aware that apple is promising to upgrade thier library "soon".
  3018.  
  3019. 3) Could you write a lib using floats instead of doubles so we have a choice
  3020. of fast vs accurate?  
  3021.  
  3022. Thanks
  3023.  
  3024. Chris
  3025. weare@galaxy.ucr.edu
  3026.  
  3027.  
  3028. +++++++++++++++++++++++++++
  3029.  
  3030. >From AppleGG@lamg.com (Gordon Apple)
  3031. Date: 25 Jun 1994 12:06:20 -0000
  3032. Organization: Los Angeles Macintosh Group BBS
  3033.  
  3034. >3) Could you write a lib using floats instead of doubles so we have a choice
  3035. >of fast vs accurate?  
  3036.  
  3037.  
  3038.     I doubt that floats are any faster than doubles on the PPC although they
  3039. would certainly be faster on a non-FPU 68K.
  3040.  
  3041.     However, please, please, please give us the fastest trancedentals
  3042. possible, even at an (optional) sacrafice of accuracy.  There are many signal
  3043. processing applications where 8-bit accurachy is overkill and floats are way
  3044. overkill.  (You'd be amazed at things we used to do in space and military
  3045. programs with three-bit A/D converters.)
  3046.  
  3047.  
  3048.  
  3049. ---------------------------
  3050.  
  3051. >From bb@lightside.com (Bob Bradley)
  3052. Subject: Q: Thread Manager - How do I benefit?
  3053. Date: Wed, 22 Jun 1994 06:10:21 -0800
  3054. Organization: Lightside, Inc.
  3055.  
  3056. In Develop 17, in the article about concurrent processing with the Thread
  3057. Manager, it says I'll be able to do other processing while a modal dialog
  3058. is up. In my app, I have 2 event queues, the normal WNE event queue and a
  3059. custom event queue that I've created. I've set these up as
  3060. YieldToUserProcess() and
  3061. YieldToCustomProcess() which simple pull the event out of the queue (if one
  3062. exists) and process the event. During my ModalDialog() loop, I call my
  3063. YieldToCustomProcess() routine each time thru. 
  3064.  
  3065. How would I benefit from using the Thread Manager (PowerPC)? From what I've
  3066. gathered it appears to do just what I've done but, in a more generalized
  3067. manner (ie not stuck with just my limited event queue). How does calling
  3068. YieldToAnyThread() differ in functionality?
  3069.  
  3070. +++++++++++++++++++++++++++
  3071.  
  3072. >From Ken Prehoda <kenp@nmrfam.wisc.edu>
  3073. Date: 23 Jun 1994 15:13:50 GMT
  3074. Organization: Univ of Wisc-Madison
  3075.  
  3076. In article <bb-220694061021@user48.lightside.com>
  3077. Bob Bradley, bb@lightside.com writes:
  3078. >How would I benefit from using the Thread Manager (PowerPC)? From what
  3079. I've
  3080. >gathered it appears to do just what I've done but, in a more generalized
  3081. >manner (ie not stuck with just my limited event queue). How does calling
  3082. >YieldToAnyThread() differ in functionality?
  3083.  
  3084. The case that you give is a small benefit of the thread manager.  As you
  3085. have shown, it is possible to get similar results for modal dialogs
  3086. without using the thread manager (although it's simpler with the
  3087. thread manager).
  3088.  
  3089. However, the thread manager lets you process a couple thousand
  3090. fourier transforms (or any other time consuming process in your app)
  3091. while still having the interface very responsive.  Unfortunately,
  3092. the powerpc version doesn't have preemptive threads and that makes
  3093. it a little less attractive.
  3094.  
  3095. Oh, if you're asking how YieldToAnyThread() is different, it is
  3096. different in the sense that control is passed on to multiple threads
  3097. in a round-robin fashion (cooperatively speaking) whereas your
  3098. control functions just switch between two event queues.  Preemptive
  3099. threads snatch time from each cooperative thread in a round-robin
  3100. fashion.
  3101.  
  3102. -Ken Prehoda
  3103. kenp@nmrfam.wisc.edu
  3104.  
  3105. +++++++++++++++++++++++++++
  3106.  
  3107. >From Jens Alfke <jens_alfke@powertalk.apple.com>
  3108. Date: Thu, 23 Jun 1994 17:36:54 GMT
  3109. Organization: Apple Computer
  3110.  
  3111. Bob Bradley, bb@lightside.com writes:
  3112. > How would I benefit from using the Thread Manager (PowerPC)? From what I've
  3113. > gathered it appears to do just what I've done but, in a more generalized
  3114. > manner (ie not stuck with just my limited event queue). How does calling
  3115. > YieldToAnyThread() differ in functionality?
  3116.  
  3117. The Thread Manager is a much smoother implementation of what you've done.
  3118. Your stuff relies on external objects you call 'events'. You have to
  3119. interrupt your processing to handle an event, and can't continue with what
  3120. you were doing until that event finishes. Threads, on the other hand, have
  3121. different stacks and can switch in and out. When a thread calls Yield, other
  3122. threads get a chance to run, but the thread that called Yield also keeps
  3123. running as soon as its time comes around when another thread yields.
  3124.  
  3125. Think of how your stuff would (not) work if one of your custom events
  3126. involved downloading a 10 megabyte file. What if you got two of these events?
  3127. One would have to wait until the first one finished. Your stuff can handle
  3128. events sequentially but can't interleave them, whereas threads can.
  3129.  
  3130. --Jens Alfke
  3131.   jens_alfke@powertalk              Rebel girl, rebel girl,
  3132.             .apple.com              Rebel girl you are the queen of my world
  3133.  
  3134. +++++++++++++++++++++++++++
  3135.  
  3136. >From bb@lightside.com (Bob Bradley)
  3137. Date: Thu, 23 Jun 1994 10:11:21 -0800
  3138. Organization: Lightside, Inc.
  3139.  
  3140. In article <1994Jun23.173654.22435@gallant.apple.com>, Jens Alfke
  3141. <jens_alfke@powertalk.apple.com> wrote:
  3142.  
  3143. > Think of how your stuff would (not) work if one of your custom events
  3144. > involved downloading a 10 megabyte file. What if you got two of these events?
  3145. > One would have to wait until the first one finished. Your stuff can handle
  3146. > events sequentially but can't interleave them, whereas threads can.
  3147.  
  3148. When using only cooperative threads, could I use a single thread to
  3149. download a 10 meg file and would calling YieldToAnyThread() stop that large
  3150. thread to process other threads or would I have to add a lot of
  3151. YieldToAnyThread() calls within that large thread? I'm a little confused
  3152. about how other threads would get time while one thread is executing. I
  3153. thought cooperative threads would still have to execute one after the
  3154. other. Am I totally lost?
  3155.  
  3156. +++++++++++++++++++++++++++
  3157.  
  3158. >From d88-jwa@dront.nada.kth.se (Jon Wdtte)
  3159. Date: 24 Jun 1994 08:36:40 GMT
  3160. Organization: The Royal Institute of Technology
  3161.  
  3162. In <bb-230694101122@user37.lightside.com> bb@lightside.com (Bob Bradley) writes:
  3163.  
  3164. >about how other threads would get time while one thread is executing. I
  3165. >thought cooperative threads would still have to execute one after the
  3166. >other. Am I totally lost?
  3167.  
  3168. Sort of. Calling YieldToAnyThread() basically says "I can take a pause
  3169. now, let another thread continue from where it was created/yielded last."
  3170. Then, when that thread calls YieldToAnyThread(), you'll eventually get
  3171. back to the first thread, which will continue from the Yield call.
  3172.  
  3173. When you do downloads, the serial port is usually so slow that it's
  3174. DEFINATELY worthwile to do async reads and yield. With the async SCSI
  3175. manager, you can do that on file I/O as well.
  3176. -- 
  3177.  -- Jon W{tte, h+@nada.kth.se, Mac Software Engineer Deluxe --
  3178.  
  3179.    What we need is a good GNU [...] licence manager implementation.
  3180.                      -- Raphael Manfredi
  3181.  
  3182. ---------------------------
  3183.  
  3184. >From soetji+@G.GP.CS.CMU.EDU (Soetjianto)
  3185. Subject: prevent update when call TEDelete, TEInsert??
  3186. Date: Thu, 23 Jun 1994 22:01:31 GMT
  3187. Organization: School of Computer Science, Carnegie Mellon
  3188.  
  3189. I am doing all sorts of manipulation on a TE, 
  3190. using TEScroll, TEDelete, TEInsert.  I want
  3191. the user only see the final state of the TE after
  3192. all manipulations have been done.  Is there a way to
  3193. do this?  I have tried ValidRect(), but it doesn't work.
  3194. Any idea how to do it?
  3195.  
  3196. thanks!
  3197. soetji@g.gp.cs.cmu.edu
  3198.  
  3199. +++++++++++++++++++++++++++
  3200.  
  3201. >From Jens Alfke <jens_alfke@powertalk.apple.com>
  3202. Date: Fri, 24 Jun 1994 17:02:08 GMT
  3203. Organization: Apple Computer
  3204.  
  3205. Soetjianto, soetji+@G.GP.CS.CMU.EDU writes:
  3206. > I am doing all sorts of manipulation on a TE, 
  3207. > using TEScroll, TEDelete, TEInsert.  I want
  3208. > the user only see the final state of the TE after
  3209. > all manipulations have been done.  Is there a way to
  3210. > do this?
  3211.  
  3212. You could either set the TE record's viewRect to an empty Rect, or set the
  3213. port's clipping region to an empty region (call ClipRect with an empty rect.)
  3214. Of course, you have to set them back to normal afterwards.
  3215.  
  3216. You may find this rather slow if you are doing a lot of work. If you're using
  3217. monostyled Text (i.e. you called TENew rather than TEStylNew) you can speed
  3218. things up by directly munging the text in the hText handle, then calling
  3219. TECalText at the end. The Munger trap is the best way to do this kind of
  3220. insertion/substitution/deletion on a handle, although its interface is
  3221. somewhat hard to figure out at first.
  3222.  
  3223. --Jens Alfke
  3224.   jens_alfke@powertalk              Rebel girl, rebel girl,
  3225.             .apple.com              Rebel girl you are the queen of my world
  3226.  
  3227. ---------------------------
  3228.  
  3229. End of C.S.M.P. Digest
  3230. **********************
  3231.  
  3232.  
  3233.